我是一名.NET开发人员,并被要求做一个将html文件转换为C#中的ANSI的应用程序.
ANSI是必需的,因为转换后的文件将在Visual Fox Pro应用程序上运行.
基本逻辑准备就绪,问题在于转换本身.
我已经尝试过这个代码:http://social.msdn.microsoft.com/Forums/pt-BR/026ddda3-9bd1-4502-b445-e2a1cc88345d/convert-file-from-utf8-to-ansi?forum=csharplanguage但是当我在editplus上检查它时,文件仍然没有转换为ANSI,甚至最糟糕的是缩进它都搞砸了.
我应该做的是转换像editplus这样的文件,它保留文档缩进并可以将任何文件从UTF8转换为ANSI.
重点是我正在使用数百个html文件,因此我不能只使用文本编辑器逐个完成.
如何进行转换?
有没有办法转换它并像editplus一样保留缩进?
对于特殊字符,例如:“ã,ão,é,í……”我在转换前对其进行了更正.这是正确的方法吗?
解决方法
使用默认编码而不是ASCII:
StreamReader sr = new StreamReader(infile); StreamWriter sw = new StreamWriter(outfile,false,Encoding.Default); // invoke the ReadToEnd method sw.WriteLine(sr.ReadToEnd()); sw.Close(); sr.Close();