C# 下载服务器的文件

2023-10-27

C# 下载服务器的文件方法,带下载进度条。

来源:C#下载文件并显示显示进度的方法实现_光脚丫思考的专栏-CSDN博客

float percent = 0;
try
{
    System.Net.HttpWebRequest Myrq = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(URL);
    System.Net.HttpWebResponse myrp = (System.Net.HttpWebResponse)Myrq.GetResponse();
    long totalBytes = myrp.ContentLength;
    if (prog != null)
    {
        prog.Maximum = (int)totalBytes;
    }
    System.IO.Stream st = myrp.GetResponseStream();
    System.IO.Stream so = new System.IO.FileStream(filename, System.IO.FileMode.Create);
    long totalDownloadedByte = 0;
    byte[] by = new byte[1024];
    int osize = st.Read(by, 0, (int)by.Length);
    while (osize > 0)
    {
        totalDownloadedByte = osize + totalDownloadedByte;
        System.Windows.Forms.Application.DoEvents();
        so.Write(by, 0, osize);
        if (prog != null)
        {
            prog.Value = (int)totalDownloadedByte;
        }
        osize = st.Read(by, 0, (int)by.Length);

        percent = (float)totalDownloadedByte / (float)totalBytes * 100;
        labelProg.Content = "当前下载进度" + percent.ToString() + "%";
        System.Windows.Forms.Application.DoEvents(); //必须加注这句代码,否则label1将因为循环执行太快而来不及显示信息
    }

    labelProg.Content = "下载完成";

    so.Close();
    st.Close();
}
catch (System.Exception ex)
{
    label1.Content = ex.ToString();
    throw;
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C# 下载服务器的文件 的相关文章

随机推荐

  • 实训报告:C&C++ 结构实训 - 深入学习与实践

    实训报告 C C 结构实训 深入学习与实践 引言 C和C 是广泛应用于软件开发领域的编程语言 它们为开发人员提供了强大的工具和灵活性 本篇文章将围绕 C C 结构实训展开 深入学习并实践其中的关键概念与技术 一 简介 C C 结构实训是一项
  • Spark内存管理

    概述 spark从1 6 0开始内存管理发生了变化 原来的内存管理由StaticMemoryManager实现 现在被称为Legacy 在1 5 x和1 6 0中运行相同代码的行为是不同的 为了兼容Legacy 可以通过spark memo
  • python综合案例

    综合案例 1 需求分析 2048游戏是一款数字益智游戏 如图所示 具体游戏规则如下 玩家每次可以选择上下左右其中一个方向移动 每移动一次 所有数字方块都会往移动的方向靠拢 相同数字方块在靠拢时会相加 每次移动完成后 系统会在空白的方块中随机
  • QSS的使用

    QSS官方文档 https doc qt io qt 5 stylesheet reference html 图标制作例子 normal hover press disable 图标制作 按钮设计指南 按钮多态的几种方法 一 程序应用qss
  • 微信小游戏入门案例——拼图游戏

    微信小游戏入门案例 拼图游戏 涉及内容 canvas组件 小程序界面绘图API 目录结构 pages game game js pages game game js 方块的初始位置 var num 00 01 02 10 11 12 20
  • Python 元组tuple详解(超详细)

    文章目录 Python内置函数 方法详解 元组tuple 1 创建元组 1 1 使用 创建元组 1 2 使用 tuple 函数 创建元组 1 3 元组 单个元素 1 4 元组 VS 列表 2 访问元组 2 1 下标索引访问 2 2 切片访问
  • qt 修改设计师界面ui不生效

    情况描述 我是之前用的vs编译器 编译的文件在代码界面 不喜欢这种方式 想要生成的文件都在一个界面 然后我又换回了MinGW编译器 然后在设计师界面修改了ui 重新编译一直不生效 网上常用两种方法 1 在设置中取消shadow 就会重新编译
  • Linux学习笔记 - Linux的文件目录与属性

    Linux的文件目录与属性 使用者与群组 这里面涉及三个概念 分别为user group other 先讲group 即组的概念 可以理解为一个项目的开发 一个组里面有若干个组员 每个组员负责一个模块的功能开发 大家都能够访问公共部分的代码
  • 数据结构与算法分析——第1~2章考试题

    判断题 1 1 The Fibonacci number sequence FN is defined as F0 0 F1 1 FN FN 1 FN 2 N 2 3 The time complexity of the function
  • Qt Installer Framework打包基础

    一 简介 Qt Installer Framework 简称QIF 提供了一组工具和实用程序来创建支持桌面Qt平台的安装程序 支持Linux Microsoft Windows和macOS操作系统 二 操作步骤 1 编译可执行程序文件 这里
  • 【java】SpringBoot2.X 通过druid-spring-boot-starter集成druid

    1 pom文件
  • 常见的shell命令

    文章目录 常用的shell命令 一 终端的使用 1 打开 2 关闭 3 放大或者缩小 4 在终端上复制 5 关闭当前进程 强制 二 shell命令 所有的命令输入完毕 按回车键执行 1 管理员权限的切换 2 退出管理员 3 临时使用管理员权
  • AIX hacmp oracle9i ORA-32700: error occurred in DIAG Group service

    A HACMP ORALCE9I 现象 一台主机重启后 启动数据库出现ORA 32700 error occurred in DIAG Group service 解决方法 分别重启两台机器上的 hacmp 1 停止hacmp节点 smit
  • 中台战略下的保险订单销售模式设计

    作者在 保险趋势分析与保险中台数字化转型 文章里提到了保险业务系统中台化后保险商品化和订单化的销售模式 本文主要通过购物车 订单中心 微前端以及产品通道等技术手段 对保险企业实施中台战略后的保险订单化销售模式进行设计 形成可实施的方案 微前
  • Qt5学习笔记(6)——下拉列表框QComboBox类

    最近需要做一个地址选择下拉列表 如下图 QComboBox下拉列表用法还是比较简单的 常用方法和属性 1 addItems void addItems const QStringList texts 在QComboBox的最后添加一项 2
  • [ASP.NET]谈谈IIS与ASP.NET管道

    ASP NET 谈谈IIS与ASP NET管道 作为一个Asp Net平台开发者 非常有必要了解IIS和Asp Net是如何结合 执行我们的托管代码 以及Asp Net管道事件的 本节目录 IIS 5 X IIS 6 IIS 7 集成模式
  • 复旦微FM33LG048芯片使用(5)UART3数字外设的使用,引脚重映射

    uart3的引脚配置比较特殊 先要配置 GPIO InitStruct mode FL GPIO MODE DIGITAL 配置为数字外设 什么是数字外设 根据文档里描述 也就是配置了数字外设 引脚的输出输入由使用的外设决定 不需要我们配置
  • 什么是数据仓库?数据仓库的特点与架构演进

    1 为什么需要数据仓库 在没有数仓之前我们做数据分析到报表展示 依赖的都是从业务数据库中取数据来做分析 业务数据库主要是为业务操作服务 虽然可以用于分析 但需要做很多额外的调整 会存在以下几个问题 表结构关联关系错综复杂 业务数据库通常是根
  • js七牛云下载视频、音频、pdf、图片

    近期碰到一个需求 浏览器下载视频 音频等附件 原生组件video audio倒是支持下载 但是别的类型不行 而且无法通过下载按钮进行 常规下载思路使用a标签download属性下载附件 但是浏览器兼容性不好 而且针对视频 音频 pdf等浏览
  • C# 下载服务器的文件

    C 下载服务器的文件方法 带下载进度条 来源 C 下载文件并显示显示进度的方法实现 光脚丫思考的专栏 CSDN博客 float percent 0 try System Net HttpWebRequest Myrq System Net