今天学习了一下vb.net 下如何写log文件 ,在网上找了一段代码,通过修改测试可以通过,并且加了注释。如果有写错的地方或者更好的建议希望同志们可以提出,叫我们一起进步!!
---------------------------------------------------------------------------------------------------------------
Private Sub WriteLog(ByVal Msg As String) Dim varAppPath As String varAppPath = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "log" '获取或设置包含该应用程序的目录的名称。也就是程序的debug\log System.IO.Directory.CreateDirectory(varAppPath) '在指定路径创建所有目录和子目录。也就是创建varAppPath目录 'TextBox1.Text = varAppPath Dim head As String head = System.DateTime.Now.Hour.ToString() + ":" + System.DateTime.Now.Minute.ToString() ' Dim headhead As String = head + ":" + System.DateTime.Now.Second.ToString() + ":" + System.DateTime.Now.Millisecond.ToString() Msg = head + System.Environment.NewLine + Msg + System.Environment.NewLine 'Environment.NewLine : 获取为此环境定义的换行字符串.也就是日期——>换行——>Msg——>换行 Dim strDate As String strDate = System.DateTime.Now.ToString("yyyyMMdd") '获取现在的时间,时间格式为yyyyMMdd Dim strFile As String strFile = varAppPath + "\" + strDate + ".log" '在相对路径下添加strDate.log文件 Dim SW As System.IO.StreamWriter SW = New System.IO.StreamWriter(strFile, True) '用默认编码和缓冲区大小,为指定的文件初始化 StreamWriter 类的一个新实例。 如果该文件存在,则可以将其覆盖或向其追加。 如果该文件不存在,则此构造函数将创建一个新文件 SW.WriteLine(Msg) '输出并换行 SW.Flush() '刷新 SW.Close() '关闭输出流 End Sub