读书人

Big5-HKSCS转UTF-8 C#中如跟实现

发布时间: 2012-09-04 14:19:30 作者: rapoo

Big5-HKSCS转UTF-8 C#中如和实现?
RT

有上百份HK那边旧式的文档,都是用Big5-HKSCS编码的。

用Big5是只能显示绝大部分,但某些特殊字是认不出来的!

网上写了很多转换方法,但都是Big5的,唯一可以转换Big5-HKSCS的教程都是Java和PHP的,郁闷啊。

为什么C#的Encoding不支持Big5-HKSCS,难道真的没有办法在C#中完成?

求大神指导!!

public string Transform(string abc)

{

Encoding big5 = Encoding.GetEncoding("big5");

byte[] big5Bytes = big5.GetBytes(abc);

//byte[] unicodeBytes = Encoding.Unicode.GetBytes(abc);

byte[] utf8Bytes = Encoding.Convert(big5, Encoding.UTF8, big5Bytes);

string newData = Encoding.UTF8.GetString(utf8Bytes);

return newData;
}

[解决办法]
Big5HKSCS的code page是951,你用cp951试试看,

int nCP=951;
Encoding big5 = Encoding.GetEncoding(nCP);

byte[] big5Bytes = big5.GetBytes(abc);

//byte[] unicodeBytes = Encoding.Unicode.GetBytes(abc);

byte[] utf8Bytes = Encoding.Convert(big5, Encoding.UTF8, big5Bytes);

string newData = Encoding.UTF8.GetString(utf8Bytes);

return newData;

读书人网 >C#

热点推荐