2015年5月15日 星期五

in C#,16進制字串如何轉成unicode字元呢?

工具函數:
==================================================
public static byte[] StringToByteArray(String hex) {
            int NumberChars = hex.Length;
            byte[] bytes = new byte[NumberChars / 2];
            for(int i = 0; i < NumberChars; i += 2)
                bytes[i / 2] = Convert.ToByte(hex.Substring(i, 2), 16);
            return bytes;
        }
===================================================
但是轉出來會有Hi byte & Low byte順序問題,所以別忘了要反轉一下

                byte[] cbyte = StringToByteArray("5F5E");
                Array.Reverse(cbyte);
                var uniChar = Encoding.Unicode.GetString(cbyte);
來源在此

加油了

沒有留言:

張貼留言