【发布时间】:2015-06-05 08:27:10
【问题描述】:
我正在尝试将一些文本行写入 Windows 窗体应用程序中的一个小日志文件,但我看不出为什么没有写入任何行。该文件创建正常,以下所有内容都可以正常执行,但是当我用记事本打开新文件时,没有行。关键 sn-ps 如下:
Dim sFileName = App_Path() & "\logs\" & sJobName & ".log"
Try
Using fs As FileStream = New FileStream(sFileName, FileMode.Append, FileAccess.Write)
Using w As StreamWriter = New StreamWriter(fs)
Dim s As String = "Beginning execution (JobName=" & sJobName & ")"
Log(s, w)
s = "Connection in effect: " & BuildConnectString()
Log(s, w)
Dim loader As New Importer
loader.LoadData(Me.txtFN.Text, w)
End Using
End Using
Catch ex As Exception
MsgBox(ex.Message)
End Try
Public Sub Log(logMessage As String, w As StreamWriter)
w.WriteLine("{0} {1}: {2}", DateTime.Now.ToLongTimeString(), _
DateTime.Now.ToShortDateString(), logMessage)
End Sub
然后我尝试从另一个类写入此日志,该类已作为参数传递 StreamWriter:
Public Function LoadData(ByRef filename As String, _
ByRef w As StreamWriter) As String
Dim s As String = "Test logging from loader class"
Mainform.Log(s, w)
在这个小测试中,我希望看到 3 行,但我什么也没得到。我看不出我做错了什么。
【问题讨论】:
-
这段代码对我有用。代码中可能还有其他内容(您在此处未提及)造成问题。
标签: vb.net winforms filestream streamwriter