C# download file and log successfully and failed

复制代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Net;

namespace ConsoleApp38
{
    internal class Program
    {
        static void Main(string[] args)
        {
            var urls = GetUrls();
            DownloadImgs(urls);
            Console.WriteLine("Done!");
        }

        static void DownloadImgs(List<string> urls)
        {
            WebClient client = new WebClient();
            int idx = 0; 
            foreach(string url in urls)
            {
                try
                {
                    client.DownloadFile(url, $"CL\\{++idx}.jpg");
                    Console.WriteLine($"{idx},{url}");
                }
                catch (Exception ex)
                {
                    LogErrorMsg(url,ex.Message); 
                } 
            }
        }

        static void LogErrorMsg(string msg, string message)
        {
            File.AppendAllText("Error.txt", msg+Environment.NewLine);
            File.AppendAllText("Exception.txt", message + Environment.NewLine);
        }

        static void LogSuccess(string url)
        {
            File.AppendAllText("Success.txt",url+Environment.NewLine);
        }

        static List<string> GetUrls()
        {
            List<string> urls = new List<string>();
            using(StreamReader reader=new StreamReader(@"..\..\cl.txt"))
            {
                string url = string.Empty;
                while((url=reader.ReadLine())!=null)
                {
                    urls.Add(url);
                }
            }
            return urls;
        }
    }
}
复制代码

 

posted @   FredGrit  阅读(3)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
历史上的今天:
2023-06-14 std::package_task bind.lambda,thread,future
2022-06-14 Linux C++ mysql create table and insert data into table,mysqlconnector set global net_read_timeout=3600
点击右上角即可分享
微信分享提示