在HttpWebRequest AddRange方法中,我们可以指定要下载的字节范围。我想知道的是如何指定从某个偏移量到文件末尾的范围。
例如,如果我们不知道文件的长度,我们可以在请求标头字符串中指定如下内容
"Range: bytes =0-“这意味着从第一个字节到文件末尾。
但是使用AddRange方法,如何用一个偏移值指定EOF??
我知道我可以获得内容长度并像这样指定,AddRange(0,ContentLength)。但我想问的是,是否有任何方法可以将内容从某个“偏移量”值获取到EOF。
发布于 2012-04-21 22:14:12
在AddRange方法中使用正值来获取从偏移量到entity结尾的字节数;
request.AddRange(10)通知服务器返回除前10个字节以外的所有字节。
你可以使用一个负值,它是终点;
request.AddRange(-10)告诉服务器返回字节0到10。
发布于 2012-04-21 22:11:26
您只需要使用不同于0的起始值来调用AddRange方法。
如下所示:
myHttpWebRequest.AddRange(50,ContentLength);发布于 2012-04-21 22:10:20
根据specification for ranges的说法
如果最后一个字节位置值不存在,或者如果该值大于或等于实体主体的当前长度,则认为最后一个字节位置等于实体主体的当前长度(以字节为单位)。
。
换句话说,你的Range: bytes = 0 -应该可以工作。实际上,HttpWebRequest有一个名为AddRange(Int32)的方法,它可以执行您所要求的操作。
https://stackoverflow.com/questions/10259354
复制相似问题