天天看點

C#中Base64之編碼,解碼方法

1、base64  to  string

    string strPath =  "aHR0cDovLzIwMy44MS4yOS40Njo1NTU3L1

9iYWlkdS9yaW5ncy9taWRpLzIwMDA3MzgwLTE2Lm1pZA==";         

    byte[] bpath = Convert.FromBase64String(strPath);

    strPath = System.Text.ASCIIEncoding.Default.GetString(bpath);

2、string   to  base64

    System.Text.Encoding encode = System.Text.Encoding.ASCII ;

    byte[]  bytedata = encode.GetBytes( "test");

    string strPath = Convert.ToBase64String(bytedata,0,bytedata.Length);

base64工作原理

Base64是MIME郵件中常用的編碼方式之一。它的主要思想是将輸入的字元串或資料編碼成隻含有{‘A‘-‘Z‘, ‘a‘-‘z‘, ‘0‘-‘9‘, ‘+‘, ‘/‘}這64個可列印字元的串,故稱為“Base64”。

Base64編碼的方法是,将輸入資料流每次取6 bit,用此6 bit的值(0-63)作為索引去查表,輸出相應字元。這樣,每3個位元組将編碼為4個字元(3×8 → 4×6);不滿4個字元的以‘=‘填充。

編碼

public string EncodeBase64(string code_type,string code)

{

string encode = "";

byte[] bytes = Encoding.GetEncoding(code_type).GetBytes(code);

try

encode = Convert.ToBase64String(bytes);

}

catch

encode = code;

return encode;

解碼

public string DecodeBase64(string code_type,string code)

string decode = "";

byte[] bytes = Convert.FromBase64String(code);

decode = Encoding.GetEncoding(code_type).GetString(bytes);

decode = code;

return decode;