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;

    }


  }
}
复制代码

 

posted @   亦承  阅读(1764)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示