如何在c ++中转换十进制值中的波斯字符?

时间:2015-11-19 05:41:26

标签: c++ linux

我使用波斯语(UTF-8)。我想将其转换为十六进制。但我的问题是如何在Linux OS中如何在c ++中转换十进制值中的波斯字符?(我使用Qt创建者)

2 个答案:

答案 0 :(得分:1)

你提到的字符有三字节编码。如果要将UTF-8存储在char数组中,则需要将每个字节转换为十六进制。否则,您可能希望将3字节UTF-8编码转换为UTF-16(16位整数,类似于UCS-2)编码,并显示该16位结果的十六进制值。

答案 1 :(得分:0)

您可以使用此代码将波斯文本转换为十六进制

  byte[] yourStrBytes = Encoding.GetEncoding("your encoding").GetBytes("your str");
  string hexStr = BitConverter.ToString(yourStrBytes).Replace("-", "");