画像とbyte[]の変換
画像の読み取り操作
①パラメータはピクチャパス:Byte[]タイプを返す:
②パラメータタイプがImageオブジェクトであり、Byte[]タイプに戻る
①パラメータはピクチャパス:Byte[]タイプを返す:
//
public byte[] GetPictureData(string imagePath)
{
FileStream fs = new FileStream(imagePath, FileMode.Open);
byte[] byteData = new byte[fs.Length];
fs.Read(byteData, 0, byteData.Length);
fs.Close();
return byteData;
}
②パラメータタイプがImageオブジェクトであり、Byte[]タイプに戻る
// Image , byte[]
public byte[] PhotoImageInsert(System.Drawing.Image imgPhoto)
{
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;
}
图片的“写”操作
①参数是Byte[]类型,返回值是Image对象
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; }
②パラメータはByte[]タイプで、戻り値はありません(ASP.NET出力ピクチャ)public void WritePhoto(byte[] streamByte) { // Response.ContentType “text/html” Response.ContentType = "image/GIF"; // : image/GIF image/JPEG Response.BinaryWrite(streamByte); }