Home  >  Article  >  Backend Development  >  C# returns the byte stream byte[] of the image

C# returns the byte stream byte[] of the image

黄舟
黄舟Original
2016-12-27 13:50:131798browse

#region 返回图片的字节流byte[]
        /// <summary>
        /// 返回图片的字节流byte[]
        /// </summary>
        ///<param name="imagePath">
        ///<param name="webClient">
        /// <returns></returns>
        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;
        }
        #endregion
#region 图片转换成字节流
      /// <summary>
      /// 图片转换成字节流
      /// </summary>
      ///<param name="img">要转换的Image对象
      /// <returns>转换后返回的字节流</returns>
      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;
          }
      }
      #endregion

The above is the content of the byte stream byte[] returned by C#. For more related content, please pay attention to the PHP Chinese website (www.php.cn)!


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn