谁有现成的好的 UTF-8 转 GB2312 的C#代码

解决方案 »

  1.   

    Encoding.Convert(Encoding.GetEncoding("gb2312",Encoding.GetEncoding("utf-8"),YourBytes);
      

  2.   

    string utfinfo = "document.write(\"alert('Hello??');\");";
    string gb2312info = string.Empty;Encoding utf8 = Encoding.UTF8;
    Encoding gb2312 = Encoding.GetEncoding("gb2312");// Convert the string into a byte[].
    byte[] unicodeBytes = utf8.GetBytes(utfinfo);
    // Perform the conversion from one encoding to the other.
    byte[] asciiBytes = Encoding.Convert(utf8, gb2312, unicodeBytes);
                
    // Convert the new byte[] into a char[] and then into a string.
    // This is a slightly different approach to converting to illustrate
    // the use of GetCharCount/GetChars.
    char[] asciiChars = new char[gb2312.GetCharCount(asciiBytes, 0, asciiBytes.Length)];
    gb2312.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0);
    gb2312info = new string(asciiChars);