我正在开设一个可以帮助我阅读游戏文件的课程,部分文件是图片。是否有可以从字节数组创建的图像对象,还是应该将图像存储为字节数组?如果我将该图像放入winforms中的图片显示器中,我可以使用字节数组吗?
从文件中存储数据的最佳方法是什么?
答案 0 :(得分:3)
喜欢this:
byte[] data = getYourImageData();
MemoryStream ms = new MemoryStream(data);
pictureBox1.Image = Image.FromStream(ms);
回答问题的其他部分,可以将其存储为字节数组 - 可以提供一个返回内存流的辅助方法,如上所示,或者将其存储在System.Drawing.Bitmap
中并返回that:
return new Bitmap(ms);
答案 1 :(得分:1)
Bitmap
中的System.Drawing
类支持将流作为参数的构造函数。该流可以由从字节数组创建的MemoryStream
提供。
获得位图后,可以使用PictureBox
来显示它。
参考文献:
http://msdn.microsoft.com/en-us/library/z7ha67kw.aspx(对于位图)
http://msdn.microsoft.com/en-us/library/system.io.memorystream.aspx(对于流)
http://msdn.microsoft.com/en-us/library/system.windows.forms.picturebox.aspx(PictureBox)