1

hi I have some text boxes which user enters information such as first name,last name ,... . I need to convert text boxes' text to hex and then convert the hex to bytes and send to device via rs232.

I know the sending via rs232 part and I also know how to convert text to bytes.

My problem is ,now, I should work with Persian characters in text boxes .It means the text for name in text box would for example like this "حسین".

How can I solve my problem?

4

2 に答える 2

2

私が正しく理解していれば、そのようなことを試すことができます

  byte[] yourStrBytes = Encoding.GetEncoding("your encoding").GetBytes("your str");
  string hexStr = BitConverter.ToString(yourStrBytes).Replace("-", "");
  byte[] hexStrBytes=Encoding.UTF8.GetBytes(hexStr);
于 2013-08-02T05:11:11.330 に答える
0

私が知っているように、ペルシャ語またはアラビア語のテキストをシリアルポート経由で他のデバイスに送信するために、継続的な Unicode に変換したい場合は、この質問のように、次のコードを使用してペルシア語またはアラビア語の文字の HEX 値に到達できます。

 private string ConvertToUTF(string input_text)
    {
        string _out = String.Empty;
        char[] _chars = input_text.ToCharArray();
        foreach (char c in _chars)
        {
            _out += ((Int16)c).ToString("X4");
        }
        return _out;
    }

Useage:

Console.WriteLine(ConvertToUTF("سلام"));
Console.WriteLine(ConvertToUTF("مرحبا"));

この出力を提供します

0633064406270645
06450631062D06280627

于 2014-01-06T07:25:39.203 に答える