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;