0

我有一张图片的网址。是否可以在不下载完整图像的情况下找出它的大小(以字节为单位)和尺寸?

编辑

HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
req.Method = "HEAD";
HttpWebResponse resp = (HttpWebResponse)(req.GetResponse());
System.Console.WriteLine(resp.ContentLength);

我已经写了这段代码。无论图像网址如何,它在前两次和第三次都可以正常工作,WebException即“操作超时”。我在这里缺少什么吗?

4

2 回答 2

4

不,这是不可能的。

您可以通过发出HTTP HEAD命令(而不是 a )来获取其大小(以字节为单位GET);这将仅返回 HTTP 标头,省略内容。

图像的 HTTP 标头将返回其大小(以字节为单位):

Content-length: 6372
Content-type: image/jpeg

但不是它的尺寸。

所以你必须做一个HTTP GET...

于 2012-10-23T07:14:09.953 回答
0

基本上,是的。如果您知道它是什么类型的图像,例如 png 或 jpg(您也可以从 HTTP 连接的 MIME 类型获取此信息,您可以仅下载标头并从那里读取图像范围。另请参阅此相关问题:

png、jpg/jpeg、bmp、gif等常见图形格式的表头尺寸是多少?

于 2012-10-23T07:15:12.573 回答