如题,谢谢!

解决方案 »

  1.   

    using System;
    using System.Text;
    public class FieldInfoClass
    {
        public static void Main()
        {
            string str = "我是中国人";
            char[] c = str.ToCharArray();
            int[] n = new int[c.Length];
            for (int i = 0; i < n.Length; i++)
            {
                n[i] = (int)(c[i]);
            }
            StringBuilder sb = new StringBuilder();
            foreach (int temp in n)
            {
                sb.Append(@"\\u" + temp.ToString("x"));
            }
            Console.WriteLine(sb.ToString());    }
    }这样如何
      

  2.   

    trystring test = "中华人民共和国";
    string result = string.Empty;
    byte[] array = new byte[test.Length * 2];
    array = System.Text.Encoding.Unicode.GetBytes(test);
    for(int i=0;i<array.Length;i=i+2)
    {
        result += @"\\u" + array[i+1].ToString("x") + array[i].ToString("x");
    }
      

  3.   

    呵呵,上面随便写的,待转换文字较多的话,用StringBuilder较好string test = "中华人民共和国";
    StringBuilder sb = new StringBuilder();
    byte[] array = new byte[test.Length * 2];
    array = System.Text.Encoding.Unicode.GetBytes(test);
    for(int i=0;i<array.Length;i=i+2)
    {
        sb.Append(@"\\u");
        sb.Append(array[i + 1].ToString("x"));
        sb.Append(array[i].ToString("x"));
    }
    string result = sb.ToString();
      

  4.   

    二楼的修改一下,精简点string str = "我是中国人";
    char[] c = str.ToCharArray();
    StringBuilder sb = new StringBuilder();
    foreach (char temp in c)
    {
        sb.Append(@"\\u" + ((int)temp).ToString("x"));
    }
    Console.WriteLine(sb.ToString());