zoukankan      html  css  js  c++  java
  • 根据URL下载图片到本地

    /// <summary>
    /// 下载图片
    /// </summary>
    /// <param name="picUrl">图片Http地址</param>
    /// <param name="savePath">保存路径</param>
    /// <param name="timeOut">Request最大请求时间,如果为-1则无限制</param>
    /// <returns></returns>
    public bool DownloadPicture(string picUrl, string savePath, int timeOut)
    {
    bool value = false;
    WebResponse response = null;
    Stream stream = null;
    try
    {
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(picUrl);
    if (timeOut != -1) request.Timeout = timeOut;
    response = request.GetResponse();
    stream = response.GetResponseStream();
    if (!response.ContentType.ToLower().StartsWith("text/"))
    value = SaveBinaryFile(response, savePath);
    }
    finally
    {
    if (stream != null) stream.Close();
    if (response != null) response.Close();
    }
    return value;
    }
    private static bool SaveBinaryFile(WebResponse response, string savePath)
    {
    bool value = false;
    byte[] buffer = new byte[1024];
    Stream outStream = null;
    Stream inStream = null;
    try
    {         string dic = Path.GetDirectoryName(savePath);                if (string.IsNullOrEmpty(dic)) return false;                if (Directory.Exists(dic) == false) Directory.CreateDirectory(dic);
    if (File.Exists(savePath)) File.Delete(savePath);
    outStream = System.IO.File.Create(savePath);
    inStream = response.GetResponseStream();
    int l;
    do
    {
    l = inStream.Read(buffer, 0, buffer.Length);
    if (l > 0) outStream.Write(buffer, 0, l);
    } while (l > 0);
    value = true;
    }
    finally
    {
    if (outStream != null) outStream.Close();
    if (inStream != null) inStream.Close();
    }
    return value;
    }

  • 相关阅读:
    ubuntu16.04上安装深度学习环境
    QQ音乐付费音乐下载的demo
    python列表按比例或长度拆分
    docker 使用gpu启动及tf限额
    python apscheduler was missed by
    k8s中使用gpu的部署方案
    从字符串中找出最大的数字串,字符串中可以带小数点。--python实现
    linux中批量删除带空格的文件
    tornado中使用python3原生事件循环asyncio
    mysql DATE_FORMAT FROM_UNIXTIME 的区别
  • 原文地址:https://www.cnblogs.com/520lw/p/12972213.html
Copyright © 2011-2022 走看看