将十六进制UTF-8字节转换为十六进制代码点

Lal*_*tya 5 c# unicode hex utf-8

如何将
十六进制UTF-8字节-E0 A4 A4转换为十六进制代码点-0924

参考:http://www.ltg.ed.ac.uk/~richard/utf-8.cgi?input = e0 + a4 + a4&mode = bytes

我需要这个,因为当我在c#中读取Unicode数据时,它将它作为单字节序列并显示3个字符而不是1,但我需要3个字节序列(读取3个字节并显示单个字符),我尝试了很多解决方案,但没有'得到结果.

如果我可以显示或存储3字节序列utf-8字符,那么我不需要转换.

senario是这样的:

    string str=getivrresult();
Run Code Online (Sandbox Code Playgroud)

在str我有一个单词,每个字符为3字节utf-8序列.

编辑:

             string str="त";
             //i want it as "?" in str.

    Character                                   ?
    Character name                              DEVANAGARI LETTER TA
    Hex code point                              0924
    Decimal code point                          2340
    Hex UTF-8 bytes                             E0 A4 A4
    Octal UTF-8 bytes                           340 244 244
    UTF-8 bytes as Latin-1 characters bytes     à ¤ ¤  
Run Code Online (Sandbox Code Playgroud)

谢谢.

Guf*_*ffa 6

使用GetStringmethdod的Encoding类:

byte[] data = { 0xE0, 0xA4, 0xA4 };
string str = Encoding.UTF8.GetString(data);
Run Code Online (Sandbox Code Playgroud)

该字符串现在包含一个字符代码为0x924的字符.