就这样,我开始创建了一个创建Java下载管理器的项目,该项目进展顺利。我现在看到的唯一问题是当我请求URL的内容长度时。当我使用HttpUrlConnection的getContentLength提供的方法时,它返回一个Int。Java中的限制HttpUrlConnection获取内容长度
这是伟大的,如果我只是永远下载文件大小小于2GB的文件。做更多挖掘并发现java不支持unsigned int值,但即使这样也只会给我一个最大4GB的文件大小。
任何人都可以帮助我正确地获取大于2GB的文件的内容大小。
在此先感谢。对于
UPDATE
谢谢你回答精英绅士,我想你的建议,但认为保持返回空值,所以不是我所做的就是
HttpURLConnection conn = (HttpURLConnection) absoluteUrl.openConnection();
conn.connect();
long contentLength = Long.parseLong(conn.getHeaderField("Content-Length"));
对于刚刚使用康恩某种原因.getRequestProperty总是为我返回一个空值
我正在寻找'getHeaderField(...)',但我找不到它。这实际上是最好的方式......我已经更新了我的答案。 哦,是的,在执行POST/GET请求之前使用'getRequestProperty',即它是为了请求而不是响应。 – 2010-02-19 09:59:17