我正在使用此函数从文件中读取文本行:
string[] postFileLines = System.IO.File.ReadAllLines(pstPathTextBox.Text);
在关键位置插入几行额外的行,然后将文本行写回文件:
TextWriter textW = new StreamWriter(filePath);
for (int i = 0; i < linesToWrite.Count; i++)
{
textW.WriteLine(linesToWrite[i]);
}
textW.Close();
在我正在阅读的文本文件包含国际或特殊字符之前,这非常有效。写回文件时,我没有得到相同的字符 - 它是一个盒子。
前任:
之前 =W:\Contrat à faire aujourd
辉\`
之后 =W:\Contrat � faire aujourd
辉\`
该网页将其描绘为问号,但在文本文件中它是一个矩形白框。
有没有办法在我的应用程序中包含正确的编码以便能够处理这些字符?或者,如果没有,抛出一个警告说它不能正确地写给定的行?