C#はピクチャのバイトストリームbyte[]を返す
2444 ワード
///
/// byte[]
///
///
///
///
public static byte[] getImageByte(string imagePath, WebClient webClient)
{
byte[] imgByte = null;
try
{
//MessageBox.Show("getImageByte");
//Stopwatch stopwatch = new Stopwatch();
//stopwatch.Start();
//DateTime dateStart = DateTime.Now;
if (PubFunc.UrlDiscern(imagePath))
{
Bitmap bt = new Bitmap(webClient.OpenRead(imagePath));
imgByte = PubFunc.ImgToByte(bt);
}
else
{
using (FileStream files = new FileStream(imagePath, FileMode.Open))
{
imgByte = new byte[files.Length];
files.Read(imgByte, 0, imgByte.Length);
files.Close();
}
}
//stopwatch.Stop();
//MessageBox.Show((DateTime.Now - dateStart).TotalMilliseconds.ToString());
}
catch (Exception ee)
{
MessageBox.Show(ee.ToString());
}
return imgByte;
}
///
///
///
/// Image
///
public static byte[] ImgToByte(Image img)
{
try
{
using (MemoryStream ms = new MemoryStream())
{
byte[] imagedata = null;
img.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
imagedata = ms.GetBuffer();
return imagedata;
}
}
catch (Exception ee)
{
MessageBox.Show(ee.ToString());
return null;
}
}