WebClient.DownloadFile存储的文件太小

时间:2012-12-03 22:22:57

标签: c# .net webclient webclient-download

我正在尝试在VS2008 .NET Framework 3.5中下载和存储图像文件,但生成的文件太小。

当我在浏览器中导航到http://www-nass.nhtsa.dot.gov/nass/cds/GetBinary.aspx?Image&ImageID=682367204时,我可以将其下载为68k文件。但是,使用以下代码,我得到一个低于4k的文件:

using (WebClient webClient = new WebClient()) {
  webClient.DownloadFile("http://www-nass.nhtsa.dot.gov/nass/cds/GetBinary.aspx?Image&ImageID=682367204", @"D:\\682367204.jpg");
}

更新:WebClient with credentials still not downloading file可能描述了我的问题的来源(和解决方案)。

2 个答案:

答案 0 :(得分:0)

该网址似乎有问题。它在Internet Explorer中为我工作,但使用谷歌浏览器,浏览器开始下载“GetBinary.aspx”文件,也许这是 4ks 文件。

答案 1 :(得分:0)

我想这是由于授权限制

您的代码 Carlos 和我自己获取4K文件的原因是我们无权访问所请求的文件。

我猜您已经使用某种登录程序通过浏览器访问该网站,或者位于可信网络上,允许该网站使用您的NT令牌。

似乎证实这一假设的是,当我将GetBinary.aspx文件的扩展名更改为 jpeg 时,我获得了一种禁止"禁止"图标。

因此,您可能需要在代码中执行更多工作,以进行身份验证

编辑:使用Cygwin的' NIX 文件工具提供:

JPEG image data, JFIF standard 1.01

所以你得到的确是一张JPEG图片。