title author date CreateTime categories
WPF 获取下载内容长度
lindexi
2018-11-08 20:18:15 +0800
2018-11-08 20:15:15 +0800
WPF

本文告诉大家如何获取一个下载内容的长度

在 WPF 可以通过 System.Net 的类进行下载资源,如下载一张图片 http://image.acmx.xyz/lindexi%2F2018116203842298 可以使用下面的代码,通过 ContentLength 拿到下载的内容长度

        private async void Button_OnClick(object sender, RoutedEventArgs e)
{
var url = "http://image.acmx.xyz/lindexi%2F2018116203842298";
var request = WebRequest.CreateHttp(url);
request.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.1";
request.Method = "Get";
using (var response = await request.GetResponseAsync())
{
var length = response.ContentLength;
}
}

这里的 ContentLength 就是内容的长度,注意很多的网站都需要使用 UserAgent 可以从 UserAgentString 找到很多可以使用的资源

实际上面的代码可以使用 HEAD 代替 get 方法,请看下面

            var url = "http://image.acmx.xyz/lindexi%2F2018116203842298";
var request = WebRequest.CreateHttp(url);
request.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.1";
request.Method = "HEAD";
using (var response = await request.GetResponseAsync())
{
var length = response.ContentLength;
}

具体请看 HTTP协议中POST、GET、HEAD、PUT等请求方法及相应值得含义 - 空白_回忆的博客 - CSDN博客

c# - Getting correct download file size from url - Stack Overflow

最新文章

  1. hibernate学习笔记之二 基本环境搭建
  2. php curl get
  3. SQL Server中的版本号
  4. BootSrap学习
  5. hdu 4348 To the moon
  6. JPA oneToMany 级联更新
  7. hdu1255 矩阵的交 线段树+扫描线
  8. Android异步任务AsyncTask
  9. Ubuntu 修复windows启动项
  10. 20150214—winform中使用构造函数传值
  11. 【PHP高效搜索专题(2)】sphinx&coreseek在PHP程序中的应用实例
  12. 【JMeter】JMeter完成一个java请求的压测
  13. PHPCMS V9 简单的二次开发
  14. 基于Bootstrap 3.x的免费高级管理控制面板主题:AdminLTE
  15. python---------函数练习题
  16. linkin大话数据结构--泛型
  17. Android 使用android-support-multidex解决Dex超出方法数的限制问题
  18. xxxx征集系统项目目标文档
  19. java常用的运算符
  20. 『cs231n』通过代码理解gan网络&tensorflow共享变量机制_上

热门文章

  1. mac进行acm(C/C++)编程
  2. Directx11教程(45) alpha blend(2)
  3. 【JZOJ4889】【NOIP2016提高A组集训第14场11.12】最长公共回文子序列
  4. jupyter的简单操作
  5. assigned before calling save & JPA id生成策略
  6. linux cat /etc/passwd 说明
  7. nodejs启本地服务器
  8. kubernetes1.3:操作Docker
  9. 2019-1-9-WPF-最小的代码使用-DynamicRenderer-书写
  10. MySQL性能分析, mysql explain执行计划详解