我的问题是我无法编写日志(写下您在程序中所做的每个操作的人(。所以我问你如何创建日志,还有另一件事我这里有这段代码。我认为这是用于创建日志,但我不知道如何在下面的代码中编辑必须编辑的内容。有人可以帮助我吗?
public class LogWriter
{
private string m_exePath = string.Empty;
public LogWriter(string logMessage)
{
LogWrite(logMessage);
}
public void LogWrite(string logMessage)
{
m_exePath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
try
{
using (StreamWriter w = File.AppendText(m_exePath + "\" + "LOGG.txt"))
{
Log(logMessage, w);
}
}
catch (Exception ex)
{
MessageBox.Show("new"+ex);
}
}
public void Log(string logMessage, TextWriter txtWriter)
{
try
{
txtWriter.Write("rnLog Entry : ");
txtWriter.WriteLine("{0} {1}", DateTime.Now.ToLongTimeString(),
DateTime.Now.ToLongDateString());
txtWriter.WriteLine(" :");
txtWriter.WriteLine(" :{0}", logMessage);
txtWriter.WriteLine("-------------------------------");
}
catch (Exception ex)
{
MessageBox.Show("old"+ex);
}
}
}
我建议您研究一下日志记录框架,如果您可以使用您展示的此类以外的其他内容。看看Serilog甚至Nlog。它们经过精心设计,可确保螺纹安全性和效率。
要使用此类或任何类(非静态(,请使用 new
创建一个实例:
LogWriter logger = new LogWriter("a message here..");
不幸的是,这个类的设计使得你不能在不编写日志条目的情况下实例化它,所以你会得到"一条消息在这里......"日志在这一点上写。
现在你有一个实例,你可以对它调用方法,例如:
logger.LogWrite("This is a log message...");
您应该能够在与程序位于同一文件夹中的 LOGG.txt 文件中看到您的日志条目。
不要仅仅从这个记录器的角度来考虑这个问题。如果你有更多的编程经验,你已经知道如何做到这一点。在教程上投入一点时间将大有帮助。