从Unicode转换为UTF8

时间:2013-11-14 11:11:53

标签: c# .net utf-8

我正在使用C#2010,想将textBox2.Text转换为UTF8字符串...

byte[] utf = System.Text.Encoding.UTF8.GetBytes(textBox2.Text);
        byte[] utf8Bytes = Encoding.UTF8.GetBytes(textBox2.Text);
        String str = Encoding.UTF8.GetString(utf8Bytes);
//            MessageBox.Show(str);
        //sTopicNewsTxt = "-1 RENDERER*TREE*@TOP_NEWS_DATA01*GEOM*TEXT SET "  +          Encoding.UTF8.GetString(utf8Bytes);
        //MessageBox.Show(sTopicNewsTxt);            
        UTF8Encoding utf8 = new UTF8Encoding();
        //byte[] var = utf8.GetBytes(textBox2.Text);
        sTopicNewsTxt = "-1 RENDERER*TREE*@TOP_NEWS_DATA01*GEOM*TEXT SET " + Convert.ToString(utf[0]);

我正在使用印地语utf8字体...

谢谢&问候。

1 个答案:

答案 0 :(得分:4)

您在方法的第一行得到了结果。 utf8Bytes 您的UTF-8编码文本。

.NET中没有“UTF-8字符串”这样的东西。字符串是幕后的Unicode(UTF-16)。如果您正在讨论特定的编码,那么您将回到字节数组。不要混淆两者。