用以在记录文件中写入自定义的调试信息(主要是时间)的组件
发表于:2007-06-30来源:作者:点击数:
标签:
@#==================================================================== @#TraceSpy - 用以在记录文件中写入自定义的调试信息( 开发 者:林健) @#==================================================================== @# @#属性: @# TraceFileName -
@#====================================================================
@#TraceSpy - 用以在记录文件中写入自定义的调试信息(
开发者:林健)
@#====================================================================
@#
@#属性:
@# TraceFileName - 记录文件名
@#
@#方法:
@# ★文本写入方面
@# WriteText - 写入自定义文本
@# ClearAllText - 清除所有文本
@# ★时间记录方面
@# SetTimePoint - 设置时间起点
@# GetTimeSpanFromInit - 询问时间跨度(距离时间起点)
@# GetTimeSpanFromPrev - 询问时间跨度(距离上次询问时间)
@#
@#====================================================================
Public Class TraceSpy
@#记录文件名
Public Shared TraceFileName As String = "Trace.txt"
@#时间起点(初始为当前时刻)
Private Shared InitTimePoint As Long = Now.Ticks
@#上次询问时间点(初始为当前时刻)
Private Shared PrevTimePoint As Long = Now.Ticks
@#写入自定义文本
Public Shared Sub WriteText(ByVal str As String, Optional ByVal showTime As Boolean = False)
TraceSpyFileWriter.WriteText(str, showTime)
End Sub
@#清除所有文本
Public Shared Sub ClearAllText()
TraceSpyFileWriter.ClearAllText()
End Sub
@#设置时间起点
Public Shared Sub SetTimePoint(Optional ByVal note As String = "")
InitTimePoint = Now.Ticks
PrevTimePoint = Now.Ticks
TraceSpyFileWriter.WriteText("设置时间起点[" & note & "]。")
End Sub
@#询问时间跨度(距离时间起点)
Public Shared Function GetTimeSpanFromInit(Optional ByVal note As String = "") As Decimal
PrevTimePoint = Now.Ticks
Dim span As Decimal
span = CDec(PrevTimePoint - InitTimePoint) / 10000D
TraceSpyFileWriter.WriteText("询问时间跨度[" & note & "],距离时间起点为" & span.ToString() & "毫秒。")
Return span
End Function
@#询问时间跨度(距离上次询问时间)
Public Shared Function GetTimeSpanFromPrev(Optional ByVal note As String = "") As Decimal
Dim RectTimePoint As Long = Now.Ticks
Dim span As Decimal
span = CDec(RectTimePoint - PrevTimePoint) / 10000D
PrevTimePoint = RectTimePoint
TraceSpyFileWriter.WriteText("询问时间跨度[" & note & "],距离上次询问时间为" & span.ToString() & "毫秒。")
Return span
End Function
End Class
Friend Class TraceSpyFileWriter
Private Shared FileWriter As System.IO.StreamWriter
@#向文件中写入一个字串
Friend Shared Sub WriteText(ByVal str As String, Optional ByVal showTime As Boolean = False)
If TraceSpy.TraceFileName = String.Empty Then
Exit Sub
End If
FileWriter = New System.IO.StreamWriter(TraceSpy.TraceFileName, True, Text.Encoding.Default)
Dim words As String
words = str
If showTime Then
words &= " @ " & Now.ToLongDateString & " " & Now.ToLongTimeString
End If
FileWriter.WriteLine(words)
FileWriter.Close()
End Sub
@#清除记录文件
Friend Shared Sub ClearAllText()
If TraceSpy.TraceFileName = String.Empty Then
Exit Sub
End If
FileWriter = New System.IO.StreamWriter(TraceSpy.TraceFileName, False, Text.Encoding.Default)
FileWriter.Write("")
FileWriter.Close()
End Sub
End Class
原文转自:http://www.ltesting.net