• c#获取远程图片的方法


    public static int SaveImageFromWeb(string imgUrl, string path)
    {
    var aaa = Environment.CurrentDirectory;
    string imgName = imgUrl.ToString().Substring(imgUrl.ToString().LastIndexOf("/") + 1);
    path = path + "//" + imgName;
    //NewPicName = imgName;//获取文件的名字
    string defaultType = ".jpg";
    string[] imgTypes = new string[] { ".jpg", ".jpeg", ".png", ".gif", ".bmp" };
    string imgType = imgUrl.ToString().Substring(imgUrl.ToString().LastIndexOf("."));
    foreach (string it in imgTypes)
    {
    if (imgType.ToLower().Equals(it))
    break;
    if (it.Equals(".bmp"))
    imgType = defaultType;
    }
    try
    {
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(imgUrl);
    request.UserAgent = "Mozilla/6.0 (MSIE 6.0; Windows NT 5.1; Natas.Robot)";
    request.Timeout = 10000;
    WebResponse response = request.GetResponse();
    Stream stream = response.GetResponseStream();
    if (response.ContentType.ToLower().StartsWith("image/"))
    {
    byte[] arrayByte = new byte[1024];
    int imgLong = (int)response.ContentLength;
    int l = 0;
    // CreateDirectory(path);
    FileStream fso = new FileStream(path, FileMode.Create);
    while (l < imgLong)
    {
    int i = stream.Read(arrayByte, 0, 1024);
    fso.Write(arrayByte, 0, i);
    l += i;
    }
    fso.Close();
    stream.Close();
    response.Close();
    return 1;
    }
    else
    {
    return 0;
    }
    }
    catch (WebException)
    {
    return 0;
    }
    catch (UriFormatException)
    {
    return 0;
    }
    }

  • 相关阅读:
    LeetCode 130. 被围绕的区域 (DFS)
    LeetCode 200. 岛屿数量 (BFS)
    LeetCode 200. 岛屿数量 (DFS)
    Win10下Anaconda命令行相关操作
    LeetCode 53. 最大子序和
    从尾到头打印链表
    字符串逆序
    交换俩字符串
    LeetCode 147. 对链表进行插入排序
    LeetCode 面试题 02.08. 环路检测
  • 原文地址:https://www.cnblogs.com/muxueyuan/p/5274518.html
Copyright © 2020-2023  润新知