C#根据图片url保存图片到本地


using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
  public static class SaveImgByUrl
  {
    /// <summary>
    /// 调用方法
    /// </summary>
    public static void SaveImg()
    {
      string imgurl = "https://img0.baidu.com/it/u=2229864841,4232235061&fm=26&fmt=auto";//图片地址
      string imgfile = "D:\\1.png";
      WriteBytesToFile(imgfile, GetBytesFromUrl(imgurl));
    }

    /// <summary>
    /// 将数据流转化为图片保存到本地
    /// </summary>
    /// <param name="fileName"></param>
    /// <param name="content"></param>
    static public void WriteBytesToFile(string fileName, byte[] content)
    {
      FileStream fs = new FileStream(fileName, FileMode.Create);
      BinaryWriter w = new BinaryWriter(fs);
      try
      {
        w.Write(content);
      }
      finally
      {
        fs.Close();
        w.Close();
      }
    }

    /// <summary>
    /// 根据url将图片转化为数据流
    /// </summary>
    /// <param name="url"></param>
    /// <returns></returns>
    static public byte[] GetBytesFromUrl(string url)
    {
      byte[] b;
      HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(url);
      WebResponse myResp = myReq.GetResponse();
      Stream stream = myResp.GetResponseStream();
      using (BinaryReader br = new BinaryReader(stream))
      {
        b = br.ReadBytes(500000);
        br.Close();
      }
      myResp.Close();
      return b;

    }


  }
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM