求助ImageToBase64,Base64ToImage 我想吧图片保存成字符串,再还原回来,各位大大帮忙写2个方法好吗小弟谢过了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://topic.csdn.net/t/20040608/12/3073267.html看看这个对你有没用 首先通过FileStream读出图片的byte数据,然后使用Convert.ToBase64String( byte[] )这个方法转化成string,然后进行保存。反之,先读出string数据然后使用Convert.FromBase64String( string )这个方法转化成byte[],之后再进行保存或者显示 Convert.ToBase64String( byte[] )这个方法转化成string,然后进行保存。反之,先读出string数据然后使用Convert.FromBase64String( string )这个方法转化成byte[],之后再进行保存或者显示============================================这个知道,主要是对内存流这不太懂Stream一类的不太会用 Encode file:FileStream.Read: File => byte[]Convert.ToBase64String( byte[] ): byte[] => stringStreamWriter.Write: string => FileDecode fileStreamReader.ReadToEnd: File => stringConvert.FromBase64String( string ): string => byte[]FileStream.Write: byte[] => File FileStream fs = new FileStream("h:/file.jpg", FileMode.Open);byte[] bytes = new byte[fs.Length];int i = fs.Read(bytes, 0, bytes.Length);string str = Convert.ToBase64String(bytes);====================================================是这样我就可以把图片转成Base64了吧,有2个问题.1.我的图片不是地址,是在pictureBox中的image类型的数据2.我要怎么才能给他转成image的呢====================================================谢谢愚翁了 to 是这样我就可以把图片转成Base64了吧,有2个问题.1.我的图片不是地址,是在pictureBox中的image类型的数据2.我要怎么才能给他转成image的呢如果是通过picturebox已经有Image对象,那相当于Image => byte[]MemoryStream ms = new MemoryStream();yourImage.Save( ms, ImageFormat.Jpeg );ms.Flush();byte[] bImage = ms.GetBuffer();//Get image databyte[] => ImageMemoryStream ms = new MemoryStream( bImage, true );ms.Read( bImage, 0, bImage.Length );ms.Position = 0;Image img = Image.FromStream( ms );如果没有给picturebox初始化image,则需要bitblt进行抓屏,参看http://www.syncfusion.com/faq/windowsforms/Search/870.aspx方法是一样的,不过产生hdc的时候通过picturebox来产生。 楼主啊,.你的解决了.,但我想问一下.我按愚翁兄的做法byte[] => ImageMemoryStream ms = new MemoryStream( bImage, true );ms.Read( bImage, 0, bImage.Length );ms.Position = 0;Image img = Image.FromStream( ms );//这句提示参数无效?不知是什么原因... 如何实现根据分辨率自动调整winform控件大小 C# 有没有3坐标的图表控件? 初始化光标停留问题 sql数据库 添加列出错 aspx里动态创建的控件为什么只有第一次事件产生。。 datagridview 统计问题,我现在只做了整数的统计,有小数点的时候就出错了 C/s,欢迎界面 有类似js的join那样的函数么 大神们都拿什么统计程序使用、在线人数的? 高分请教: 如何从ClassLibrary1.dll动态引出Form... 急 BS下SKIN文件如何读写
看看这个对你有没用
然后使用
Convert.ToBase64String( byte[] )
这个方法转化成string,然后进行保存。反之,先读出string数据
然后使用
Convert.FromBase64String( string )
这个方法转化成byte[],之后再进行保存或者显示
这个方法转化成string,然后进行保存。反之,先读出string数据
然后使用
Convert.FromBase64String( string )
这个方法转化成byte[],之后再进行保存或者显示
============================================
这个知道,主要是对内存流这不太懂Stream一类的不太会用
FileStream.Read: File => byte[]
Convert.ToBase64String( byte[] ): byte[] => string
StreamWriter.Write: string => FileDecode file
StreamReader.ReadToEnd: File => string
Convert.FromBase64String( string ): string => byte[]
FileStream.Write: byte[] => File
byte[] bytes = new byte[fs.Length];
int i = fs.Read(bytes, 0, bytes.Length);
string str = Convert.ToBase64String(bytes);
====================================================
是这样我就可以把图片转成Base64了吧,有2个问题.
1.我的图片不是地址,是在pictureBox中的image类型的数据
2.我要怎么才能给他转成image的呢
====================================================
谢谢愚翁了
1.我的图片不是地址,是在pictureBox中的image类型的数据
2.我要怎么才能给他转成image的呢如果是通过picturebox已经有Image对象,那相当于
Image => byte[]
MemoryStream ms = new MemoryStream();
yourImage.Save( ms, ImageFormat.Jpeg );
ms.Flush();
byte[] bImage = ms.GetBuffer();//Get image databyte[] => Image
MemoryStream ms = new MemoryStream( bImage, true );
ms.Read( bImage, 0, bImage.Length );
ms.Position = 0;
Image img = Image.FromStream( ms );如果没有给picturebox初始化image,则需要bitblt进行抓屏,
参看
http://www.syncfusion.com/faq/windowsforms/Search/870.aspx
方法是一样的,不过产生hdc的时候通过picturebox来产生。
byte[] => Image
MemoryStream ms = new MemoryStream( bImage, true );
ms.Read( bImage, 0, bImage.Length );
ms.Position = 0;
Image img = Image.FromStream( ms );//这句提示参数无效?
不知是什么原因...