如题: 1.关于任意字符如何转为2进制?   (比如: 转换"G" 这个字符就会出现"未找到任何可识别的数字。"的错误,以及汉字如何转换?)2. 如何将转换后的2进制再转换 16进制?
谢谢..

解决方案 »

  1.   

    是不是需要 有一个再转换为ASCII 码或者其他编码格式 的过程??  望兄弟们帮忙..
      

  2.   

    任意字符你可以直接转化成ASCII,然后转化成二进制,也可以直接用getbytes来转化
    二进制转16进制好像不是什么问题吧,4位一转,很简单
      

  3.   

    char c = 'G';  
    //转ASCII
    int num = (int)c;
    //转二进制
    string str2 = Convert.ToString(num, 8);
    //转十六进制
    string str16 = Convert.ToString(num, 16);
      

  4.   

            public void TestNN()
            {
                char c = 'G';
                //转ASCII
                int num = (int)c;
                //转二进制
                string str2 = Convert.ToString(num, 2);
                //转十六进制
                string str16 = Convert.ToString(num, 16);
                Console.WriteLine(str2);
                Console.WriteLine(str16);
            }
      

  5.   

     string text = "大家好";
                string s = string.Empty;            foreach (char item in text)
                {
                    int i = item;
                    s += Convert.ToString(i, 16);
                }            Console.WriteLine("{0}",s);
                Console.ReadKey();中文字符也可以直接用  int i =   的,高级语言就是省事
      

  6.   

    Convert.ToString(string , 8);
      

  7.   


    private void button1_Click(object sender, EventArgs e)
    {
        // 问题1
        string binEn = Convert.ToString((int)'G', 2);            // 字符(G)  -->  二进制(1000101)
        MessageBox.Show(binEn);    string binCn = Convert.ToString((int)'中', 2);           // 汉字(中)  -->  二进制(1010101111000001)
        MessageBox.Show(binCn);    // 问题2
        string hexEn = Convert.ToInt16(binEn, 2).ToString("X");  // 二进制(1000101)          --> 十六进制( 47 )
        MessageBox.Show(hexEn);    string hexCn = Convert.ToInt16(binCn, 2).ToString("X");  // 二进制(1010101111000001) -->  十六进制(4E2D)
        MessageBox.Show(hexCn);
    }