c#如何把图片变二进制的数据,保存起来,写入文件中。?

 我来答
dq_as
推荐于2016-05-21 · TA获得超过121个赞
知道小有建树答主
回答量:169
采纳率:0%
帮助的人:131万
展开全部
//---path 图片的地址
FileStream fs = new FileStream(path, FileMode.Open);
// 使用文件流构造一个二进制读取器将基元数据读作二进制值
BinaryReader br = new BinaryReader(fs);
byte[] imageBuffer = new byte[br.BaseStream.Length];
br.Read(imageBuffer, 0, Convert.ToInt32(br.BaseStream.Length));
string textString = System.Convert.ToBase64String(imageBuffer);
fs.Close();
br.Close();
//------textString 就是二进制 图片的字符串了
wlfd1234
2011-02-18 · TA获得超过1075个赞
知道小有建树答主
回答量:618
采纳率:0%
帮助的人:509万
展开全部
我刚好有研究过,等我晚上回去给你发过来
以下代码为个人原创,转载务必注明为 Lincal 所写
/// <summary>
/// 将图片读入内存,然后释放图片连接句柄,返回读入的图片或 null
/// </summary>
public static byte[] GetImageDataFromPath(string filePath)
{
try
{
Image.FromFile(filePath).Dispose();

FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read);
int byteLength = (int)fs.Length;
byte[] fileData = new byte[byteLength];
fs.Read(fileData, 0, byteLength);
fs.Close();

return fileData;
}
catch
{
return null;
}
}

/// <summary>
/// 将图片读入内存,然后释放图片连接句柄,返回读入的图片或 null
/// </summary>
public static Image GetImageFromPath(string filePath)
{
Image image = null;
byte[] buff = GetImageDataFromPath(filePath);
if (buff != null)
image = Image.FromStream(new MemoryStream(buff));

return image;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fgfxr03
2011-02-19 · TA获得超过151个赞
知道答主
回答量:236
采纳率:100%
帮助的人:0
展开全部
画好的图形之所以消失,是因为每当对窗体进行操作的时候,都会触发系统消息,通知程序重画所有必要的窗体,具体的说,消息到达后,各个部件或控件自己画自己的,因为你画的图形不是属于控件本身onPaint()事件里,,所以画完之后,你画的图像就没了。所以,要想保持自绘的图形不会消失,只有自己把图形数据保存下来,并且在pictureBox的画图事件里把画图代码添上,比如private void pictureBox1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
//画图代码
}
才能做到。至于数据怎么保存,看自己的,我一般保存在Arrylist里,方便,还支持自动增减,程序好编 。
想要代码的画,我qq583471261
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
FantasyChump
2011-02-18 · TA获得超过3288个赞
知道大有可为答主
回答量:2127
采纳率:0%
帮助的人:2237万
展开全部
图片可以直接保存啊。
Image.Save("c:\\1.png", System.Drawing.Imaging.ImageFormat.Png);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式