JLWLjlwl 2021-05-31 21:15 采纳率: 76.9%
浏览 54
已采纳

各位老师好,C#winform中的下载问题

想要在winform中通过点击一个button的方式把文件(使用的是文件的直接下载的地址url)下载到电脑中的某个地方,请问有老师可以教一下吗

  • 写回答

3条回答 默认 最新

  • 文盲老顾 WEB应用领新星创作者 2021-06-01 11:20
    关注
    // 最简语句,自行扩充
    HttpWebRequest http = (HttpWebRequest)WebRequest.Create(url);
    try
    {
        HttpWebResponse hwr = (HttpWebResponse)http.GetResponse();
        Stream s = hwr.GetResponseStream();
        int length = (int)hwr.ContentLength;
        byte[] bt = new byte[length];
        int bufferlength = 1024 * 256;
        long sum = 0;
        while (sum < length)
        {
            byte[] bytes = new byte[bufferlength];
            int readbytes = s.Read(bytes, 0, bytes.Length);
            Array.Copy(bytes, 0, bt, sum, readbytes);
            sum += readbytes;
        }
        FileStream fs = new FileStream(fileName, FileMode.Create);
        BinaryWriter bw = new BinaryWriter(fs);
        bw.Write(bt);
        bw.Flush();
    }
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • 文盲老顾 WEB应用领新星创作者 2021-06-01 12:47
    关注
                fileName=@"c:\windows\system32\a.txt";
                FileInfo fi = new FileInfo(fileName);
                string folder = Regex.Replace(fi.FullName, @"[^/\\]+$", "", RegexOptions.IgnoreCase);
                if (!Directory.Exists(folder))
                {
                    Directory.CreateDirectory(folder);
                }
    

    加到FileStream前边

    评论
  • CrisYoung 2021-06-01 10:48
    关注

    button的点击事件里发送http get请求指定url,然后在response里获取你要的文件,再自行保存

    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥30 如何处理shell命令接收到的视频流并实时播放出来
  • ¥15 虚心请教C#的代码优化问题
  • ¥15 有偿求做台风过境全过程模拟仿真
  • ¥50 求!AutomationDesk 如何自动导入Variant数据
  • ¥20 Next.JS 静态导出路由
  • ¥15 我做一个对中文文本情感分析的项目 我用了CNN,和keras框架 报的错误我一直处理不好
  • ¥15 unity使用bakery打光烘焙所遇到的问题。
  • ¥99 二维有限元方法求解,泊松方程
  • ¥15 我需要在PC端 开两个抖店工作台客户端.(语言-java)
  • ¥15 有没有哪位厉害的人可以用C#可视化呀