对于一个数来说,它就是一个数,16进制或2进制只是它的表现形式。
int.ToString("X")
产生这个数的16进制表现字符串。
二进制的没有现成的,可以从16进制的串来产生一个。public string HexToBin(string hexStr)
{
  string binStr = "";
  for(int i=0; i < hexStr.Length; i++)
  {
    string s = hexStr.SubString(i, 1);
    switch(s){
      case "0": binStr += "0000"; break;
      case "1": binStr += "0001"; break;
      case "2": binStr += "0010"; break;
      ...
      case "E": binStr += "1110"; break;
      case "F": binStr += "1111"; break;
  }
  
  return binStr;
}
参考里的的VB源码吧
http://vbboshi.myrice.com/vbcode/code_18.htm

解决方案 »

  1.   

    不是这样的,如表中设为binary 的一个char(20)的串"謫彤B?>焌??搖Y腔"(注:此处表中就是乱码)
    转化为16进位的串为"966855395c5419dd8c01d06be908d06f9ac20399"的形式!
    php中有函数bin2hex()可转换,c#好像没有,需要自己写个??
      

  2.   

    由数据库中binary接得到2进制的字符串的函数要自己写吧,你都得到16进制字符串了,再转换下就好了。
      

  3.   

    binary在C#中应该是byte数组的表现形式
    比如说
    string s="謫彤B?>焌??搖Y腔"
    byte [] buf=System.Text.Encoding.Default.GetBytes(s);
    那么16进制字符串就是:
    string sHex="";
    for(int i=0;i<buf.Length;i++)
       sHex+=i.ToString("X2");十进制和二进制的转换可以看看:
    http://www.cnblogs.com/popcorn/archive/2004/06/09/14582.aspx
    http://www.cnblogs.com/popcorn/archive/2004/06/09/14581.aspx
    很容易改成C#的.
      

  4.   

    /   .
                                                              ' /  .- .
                                                              .  .- .-
                                                            ./    .--...
                                                  .-------- 0    .--
                                                 /                 .......
                                                '                  ..
                                                 '........            ----
                                                          .          --..
                                                           .   .---..   -
                                       分  o               .  '     -.
                                         分               /   '
                                                         / ' ' '
                                       \-分--/....... . '  ' '  '
                                        \ __/ -      - -'  '  ' '
                                                        '  '  ' '
                                         o              '   ' ' '
                                                        '   '  '
                                                         -..'.----------.
                                                            I   ----------
                                                     /////////.
      

  5.   

    popcorn(米花) :
    你那代码转换出来的字符串怎么不是966855395c5419dd8c01d06be908d06f9ac20399,
    不能还原呀?
      

  6.   

    private void btn_Click(object sender, System.EventArgs e) {
    int i = 100; string hex = i.ToString("X"); //转成16进制
    i = Convert.ToInt32(hex, 16); //转回10进制

    string bin = Convert.ToString(i, 2); //转成2进制
    i = Convert.ToInt32(bin, 2); //转回10进制
    }