2011-03-23 83 views
1

好吧,我做了一个应该工作的程序,但不幸的是没有。它加载一个文件保存字符串并修改它以显示正常的ASCII字符。该程序不会出错,但该文件不会更改。这里是代码的一部分:C锐利的系统IO保存文本文件问题

string filePath = textBox1.Text; 

if (File.Exists(filePath)) 
{ 
    var text = File.ReadAllText(filePath,Encoding.Unicode); 
    StringBuilder sb = new StringBuilder(text); 
    sb.Replace('ą', 'a'); 
    ... 
    File.WriteAllText(filePath, text , Encoding.Unicode); 
} 

不幸的是,即使我将文件保存为Unicode文件,它仍然不会更改文件文本。我的问题在哪里?谢谢你的帮助。

回答

11

这条线:

File.WriteAllText(filePath, text, Encoding.Unicode); 

应该是:

File.WriteAllText(filePath, sb.ToString(), Encoding.Unicode);