我已将Word文档(docx)转换为html,转换的html具有
Windows-1252作为其字符编码.在.Net中,这个1252字符编码,所有的特殊字符都显示为’ ‘.这个html正在Rad编辑器中显示,如果html是Utf-8格式的,它将正确显示.
我尝试了以下代码,但没有静脉
Encoding wind1252 = Encoding.GetEncoding(1252); Encoding utf8 = Encoding.UTF8; byte[] wind1252Bytes = wind1252.GetBytes(strHtml); byte[] utf8Bytes = Encoding.Convert(wind1252,utf8,wind1252Bytes); char[] utf8Chars = new char[utf8.GetCharCount(utf8Bytes,utf8Bytes.Length)]; utf8.GetChars(utf8Bytes,utf8Bytes.Length,utf8Chars,0); string utf8String = new string(utf8Chars);
关于如何将html转换成UTF-8的任何建议?
解决方法
这应该做到:
Encoding wind1252 = Encoding.GetEncoding(1252); Encoding utf8 = Encoding.UTF8; byte[] wind1252Bytes = wind1252.GetBytes(strHtml); byte[] utf8Bytes = Encoding.Convert(wind1252,wind1252Bytes); string utf8String = Encoding.UTF8.GetString(utf8Bytes);