zoukankan      html  css  js  c++  java
  • C# string类型和byte[]类型相互转换

    C# string类型和byte[]类型相互转换

    • 浏览:10133
    • |
    • 更新:2014-06-21 21:13
    百度经验:jingyan.baidu.com

    string类型转成byte[]:

    byte[] byteArray = System.Text.Encoding.Default.GetBytes ( str );

    byte[]转成string:

    string str = System.Text.Encoding.Default.GetString ( byteArray );

    string类型转成ASCII byte[]:

    ("01" 转成 byte[] = new byte[]{ 0x30,0x31})

    byte[] byteArray = System.Text.Encoding.ASCII.GetBytes ( str );

    ASCIIbyte[]转成string:

    (byte[] = new byte[]{ 0x30, 0x31} 转成"01")

    string str = System.Text.Encoding.ASCII.GetString ( byteArray );

    byte[]转16进制格式string:

    new byte[]{ 0x30, 0x31}转成"3031":

    publicstaticstring ToHexString ( byte[] bytes ) // 0xae00cf => "AE00CF "

    {string hexString = string.Empty;

    if ( bytes != null )

    {                

    StringBuilder strB = new StringBuilder ();

    for ( int i = 0; i < bytes.Length; i++ )

    {                    

    strB.Append ( bytes[i].ToString ( "X2" ) );                

    }                

    hexString = strB.ToString ();            

    }return hexString;        

    }

    16进制格式string 转byte[]:

    publicstaticbyte[] GetBytes(string hexString, outint discarded)

    {            

    discarded = 0;

    string newString = "";

    char c;// remove all none A-F, 0-9, charactersfor (int i=0; i<hexString.Length; i++)

    {              

      c = hexString[i];if (IsHexDigit(c))                    

    newString += c;

    else                    

    discarded++;            

    }// if odd number of characters, discard last characterif (newString.Length % 2 != 0){                discarded++;                

    newString = newString.Substring(0, newString.Length-1);            }

    int byteLength = newString.Length / 2;byte[] bytes = newbyte[byteLength];string hex;int j = 0;for (int i=0; i<bytes.Length; i++){               

     hex = new String(new Char[] {newString[j], newString[j+1]});               

     bytes[i] = HexToByte(hex);                j = j+2;           

     }

    return bytes;       

     }

  • 相关阅读:
    iaas,paas,saas理解
    July 06th. 2018, Week 27th. Friday
    July 05th. 2018, Week 27th. Thursday
    July 04th. 2018, Week 27th. Wednesday
    July 03rd. 2018, Week 27th. Tuesday
    July 02nd. 2018, Week 27th. Monday
    July 01st. 2018, Week 27th. Sunday
    June 30th. 2018, Week 26th. Saturday
    June 29th. 2018, Week 26th. Friday
    June 28th. 2018, Week 26th. Thursday
  • 原文地址:https://www.cnblogs.com/gosteps/p/5289891.html
Copyright © 2011-2022 走看看