任何HTTP响应都 应该 包含Content-Length标头,因此您可以查询URLConnection对象以获取此值。
//once the connection has been openedList values = urlConnection.getHeaderFields().get("content-Length")if (values != null && !values.isEmpty()) { // getHeaderFields() returns a Map with key=(String) header // name, value = List of String values for that header field. // just use the first value here. String sLength = (String) values.get(0); if (sLength != null) { //parse the length into an integer... ... }服务器不一定总是能够返回准确的Content-Length,因此该值可能不准确,但至少在大多数情况下您会获得 一些 可用的值。
更新: 或者,现在,我更加全面地了解URLConnection
javadoc,您可以只使用getContentLength()方法。



