我有一個用C#編寫的類庫,用於將錯誤和其他信息寫入文本或日誌文件。問題在於它在將文本寫入文件時正在更改文本。它正在被一個vb.net應用程序調用。StreamWriter爲什麼改變它寫入文件的文本?
應寫入文本:02-20-2017 08:17:42 - Personality Update() beginning:
,實際上是正在寫入的文字:02-20-2017 08:17:42 - Per42onaliA17 Up20aAe() beA.D.inninA.D.:
下面是調用寫出來的字符串的方法的代碼。
errHandler.AddLineToLogFile(Me.MasterLogFileName, "Personality Update() beginning:")
下面是調用的方法。
public void AddLineToLogFile(string logFile, string message, bool replaceExistingFile = false)
{
DateTime now = DateTime.Now;
using (StreamWriter writer = new StreamWriter(logFile, !replaceExistingFile))
{
writer.WriteLine(now.ToString("MM-dd-yyyy HH:mm:ss - " + message));
writer.WriteLine(" ");
}
}
有人可以幫我解決這個問題嗎?
你爲什麼要對字符串變量做message.ToString()? – Rumplin
「消息」已經是字符串,您不需要轉換爲字符串。 – imsome1
您的消息也位於'now'DateTime的ToString()中。所以這就是爲什麼字符'正在被轉換爲42(秒錶示秒),等等...... –