Java中如何把圖片轉換成二進制流

1.將Image圖像文件存入到 數據庫中 咱們知道數據庫裏的Image類型的數據是"二進制數據",所以必須將圖像文件轉換成字節數組才能存入數據庫中。

  //根據文件名(徹底路徑) sql

  public byte[] SetImageToByteArray(string fileName) 數據庫

  { FileStream fs = new FileStream(fileName, FileMode.Open); 數組

  int streamLength = (int)fs.Length; byte[] image = new byte[streamLength]; server

  fs.Read(image, 0, streamLength); get

  fs.Close(); string

  return image; } stream

  //另外,在ASP.NET中經過FileUpload控件獲得的圖像文件能夠經過如下方法 file

  public byte[] 命名空間

  SetImageToByteArray(FileUpload FileUpload1) 二進制

  { Stream stream = FileUpload1.PostedFile.InputStream;

  byte[] photo = new byte[FileUpload1.PostedFile.ContentLength];

  stream.Read(photo, 0, FileUpload1.PostedFile.ContentLength);

  stream.Close();

  return photo;

  }

  2.從SQL Server數據庫讀取Image類型的數據,並轉換成bytes[]或Image圖像文件

  //要使用SqlDataReader要加載using System.Data.SqlClient命名空間

  //將數據庫中的Image類型轉換成byte[] public byte[] SetImage(SqlDataReader reader)

  { return (byte[])reader["Image"];//Image爲數據庫中存放Image類型字段 }

  //將byte[]轉換成Image圖像類型 //加載如下命名空間using System.Drawing;/using System.IO;

  using System.Data.SqlClient;*/ public Image SetByteToImage(byte[] mybyte)

  { Image image; MemoryStream mymemorystream = new MemoryStream(mybyte,0, mybyte.Length);

  image = Image.FromStream(mymemorystream);

  return image;

  }

相關文章
相關標籤/搜索