C#中圖片、二進(jìn)制與字符串的相互轉(zhuǎn)換方法
本文實(shí)例講述了C#中圖片、二進(jìn)制與字符串的相互轉(zhuǎn)換方法。分享給大家供大家參考,具體如下:
protected void Button1_Click(object sender, EventArgs e) { //圖片轉(zhuǎn)二進(jìn)制 byte[] imageByte = GetPictureData(Server.MapPath("./uploadfile/111.png")); //二進(jìn)制轉(zhuǎn)換成字符串 string picStr = Convert.ToBase64String(imageByte); //輸出字符串 Response.Write(picStr); //字符串轉(zhuǎn)二進(jìn)制 byte[] imageBytes = Convert.FromBase64String(picStr); //讀入MemoryStream對(duì)象 MemoryStream memoryStream = new MemoryStream(imageBytes, 0, imageBytes.Length); memoryStream.Write(imageBytes, 0, imageBytes.Length); //二進(jìn)制轉(zhuǎn)成圖片保存 System.Drawing.Image image = System.Drawing.Image.FromStream(memoryStream); image.Save(Server.MapPath("./uploadfile/222.png")); } /// <summary> /// 二進(jìn)制流轉(zhuǎn)圖片 /// </summary> /// <param name="streamByte">二進(jìn)制流</param> /// <returns>圖片</returns> public System.Drawing.Image ReturnPhoto(byte[] streamByte) { System.IO.MemoryStream ms = new System.IO.MemoryStream(streamByte); System.Drawing.Image img = System.Drawing.Image.FromStream(ms); return img; } /// <summary> /// 圖片轉(zhuǎn)二進(jìn)制 /// </summary> /// <param name="imagepath">圖片地址</param> /// <returns>二進(jìn)制</returns> public byte[] GetPictureData(string imagepath) { //根據(jù)圖片文件的路徑使用文件流打開,并保存為byte[] FileStream fs = new FileStream(imagepath, FileMode.Open);//可以是其他重載方法 byte[] byData = new byte[fs.Length]; fs.Read(byData, 0, byData.Length); fs.Close(); return byData; } /// <summary> /// 圖片轉(zhuǎn)二進(jìn)制 /// </summary> /// <param name="imgPhoto">圖片對(duì)象</param> /// <returns>二進(jìn)制</returns> public byte[] PhotoImageInsert(System.Drawing.Image imgPhoto) { //將Image轉(zhuǎn)換成流數(shù)據(jù),并保存為byte[] MemoryStream mstream = new MemoryStream(); imgPhoto.Save(mstream, System.Drawing.Imaging.ImageFormat.Bmp); byte[] byData = new Byte[mstream.Length]; mstream.Position = 0; mstream.Read(byData, 0, byData.Length); mstream.Close(); return byData; }
PS:這里小編再給大家推薦本站的一款圖片轉(zhuǎn)BASE64格式的在線轉(zhuǎn)換工具,非常具有實(shí)用價(jià)值:
在線圖片轉(zhuǎn)換BASE64工具:
http://tools.jb51.net/transcoding/img2base64
更多關(guān)于C#相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《C#常見控件用法教程》、《WinForm控件用法總結(jié)》、《C#數(shù)據(jù)結(jié)構(gòu)與算法教程》、《C#面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》及《C#程序設(shè)計(jì)之線程使用技巧總結(jié)》
希望本文所述對(duì)大家C#程序設(shè)計(jì)有所幫助。
上一篇:C#模擬http 發(fā)送post或get請(qǐng)求的簡單實(shí)例
欄 目:C#教程
下一篇:C# IsDefined的問題
本文標(biāo)題:C#中圖片、二進(jìn)制與字符串的相互轉(zhuǎn)換方法
本文地址:http://mengdiqiu.com.cn/a1/C_jiaocheng/6458.html
您可能感興趣的文章
- 01-10C#通過反射獲取當(dāng)前工程中所有窗體并打開的方法
- 01-10C#實(shí)現(xiàn)Winform中打開網(wǎng)頁頁面的方法
- 01-10C#實(shí)現(xiàn)由四周向中心縮小的窗體退出特效
- 01-10Extjs4如何處理后臺(tái)json數(shù)據(jù)中日期和時(shí)間
- 01-10C#實(shí)現(xiàn)打開畫圖的同時(shí)載入圖片、最大化顯示畫圖窗體的方法
- 01-10C#中DataGridView常用操作實(shí)例小結(jié)
- 01-10C#編程獲取資源文件中圖片的方法
- 01-10asp.net中XML如何做增刪改查操作
- 01-10C#利用反射技術(shù)實(shí)現(xiàn)去掉按鈕選中時(shí)的邊框效果
- 01-10C#中查找Dictionary中的重復(fù)值的方法


閱讀排行
本欄相關(guān)
- 01-10C#通過反射獲取當(dāng)前工程中所有窗體并
- 01-10關(guān)于ASP網(wǎng)頁無法打開的解決方案
- 01-10WinForm限制窗體不能移到屏幕外的方法
- 01-10WinForm繪制圓角的方法
- 01-10C#實(shí)現(xiàn)txt定位指定行完整實(shí)例
- 01-10WinForm實(shí)現(xiàn)仿視頻 器左下角滾動(dòng)新
- 01-10C#停止線程的方法
- 01-10C#實(shí)現(xiàn)清空回收站的方法
- 01-10C#通過重寫Panel改變邊框顏色與寬度的
- 01-10C#實(shí)現(xiàn)讀取注冊(cè)表監(jiān)控當(dāng)前操作系統(tǒng)已
隨機(jī)閱讀
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 01-11ajax實(shí)現(xiàn)頁面的局部加載
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10C#中split用法實(shí)例總結(jié)
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
- 04-02jquery與jsp,用jquery
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 01-10delphi制作wav文件的方法
- 01-10使用C語言求解撲克牌的順子及n個(gè)骰子