C# string byte[] Base64 常用互相轉換

來源:互聯網
上載者:User

標籤:

參考:

http://www.cnblogs.com/zxx193/p/3605238.html?utm_source=tuicool

http://www.cnblogs.com/freeliver54/p/3430956.html

http://www.cnblogs.com/simhare/archive/2007/07/18/821938.html

 

定義string變數為str,記憶體流變數為ms,位元數組為bt

 

1.字串=>位元數組

(1)byte[] bt=System.Text.Encoding.Default.GetBytes("字串");(2)byte[] bt=Convert.FromBase64String("字串");

補充:

System.Text.Encoding.Unicode.GetBytes(str);System.Text.Encoding.UTF8.GetBytes(str);System.Text.Encoding.GetEncoding("gb2312").GetBytes(str); //指定編碼方式
string str = "中國?ss123?";byte[] bytes = System.Text.Encoding.Default.GetBytes(str); //gb2312編碼 漢字佔2個位元組、英文字母佔1個位元組 bytes長度為12string s = System.Text.Encoding.Default.GetString(new byte[] { bytes[0],bytes[1] });//解碼後為“中”
byte[] bytes = {97, 98, 99, 100, 101, 102};  string str = System.Text.Encoding.ASCII.GetString(bytes); //結果為:abcdef  ASCII碼錶

2.位元數組=>字串

(1)string str=System.Text.Encoding.Default.GetString(bt);(2)string str=Convert.ToBase64String(bt);

 

3.字串=>

(1)MemoryStream ms=new MemoryStream(System.Text.Encoding.Default.GetBytes("字串"));(2)MemoryStream ms=new MemoryStream(Convert.FromBase64String("字串"));

 

4.流=>字串

(1)string str=Convert.ToBase64String(ms.ToArray());(2)string str=System.Text.Encoding.Default.GetString(ms.ToArray());

 

5.位元數組=>

(1)MemoryStream ms=new MemoryStream(bt);(2)MemoryStream ms=new MemoryStream();ms.Read(bt,0,bt.Lenght);

 

6.流=>位元數組

(1)byte[] bt=ms.ToArray();(2)MemoryStream ms=new MemoryStream();ms.Write(bt,0,ms.Length);

 

7、byte[]與base64string的互相轉換

在C#中          圖片到byte[]再到base64string的轉換:                Bitmap bmp = new Bitmap(filepath);                 MemoryStream ms = new MemoryStream();                 bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);                 byte[] arr = new byte[ms.Length];                 ms.Position = 0;                 ms.Read(arr, 0, (int)ms.Length);                 ms.Close();             string     pic = Convert.ToBase64String(arr);    base64string到byte[]再到圖片的轉換:                       byte[] imageBytes = Convert.FromBase64String(pic);                     //讀入MemoryStream對象                     MemoryStream memoryStream = new MemoryStream(imageBytes, 0, imageBytes.Length);                     memoryStream.Write(imageBytes, 0, imageBytes.Length);                     //轉成圖片                     Image image = Image.FromStream(memoryStream);   現在的資料庫開發中:圖片的存放方式一般有CLOB:存放base64string                                                                        BLOB:存放byte[]  一般推薦使用byte[]。因為圖片可以直接轉換為byte[]存放到資料庫中 若使用base64string 還需要從byte[]轉換成base64string 。更浪費效能。
View Code

 

C# byte數組與Image的相互轉換

http://www.cnblogs.com/luxiaoxun/p/3378416.html

 

 

C# string byte[] Base64 常用互相轉換

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.