gpt4 book ai didi

java - 请求方法 GET 返回错误的内容长度

转载 作者:可可西里 更新时间:2023-11-01 17:10:25 31 4
gpt4 key购买 nike

您好,我正在使用获取 txt 文件内容的 HttpURLConnection,我想知道该文件的大小,我使用内容长度方法,但它返回错误例如在此代码中的值文件的大小是 17509 但它返回 5147 ?有什么帮助吗?提前致谢 :)。

new Thread() {
@Override
public void run() {
String path = parser.getValue(e, "txt");
URL u = null;
try {
u = new URL(path);
HttpURLConnection c = (HttpURLConnection) u
.openConnection();
c.setRequestMethod("GET");
c.connect();
int lenghtOfFile = c.getContentLength();
InputStream in = c.getInputStream();
final ByteArrayOutputStream bo = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
long total = 0;
Log.i("p1",""+lenghtOfFile);
while ((count = in.read(buffer)) != -1) {
total += count;
Log.i("p2",""+total);
bo.write(buffer, 0, count);
}
bo.close();

} catch (MalformedURLException e) {
e.printStackTrace();
} catch (ProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

}
}.start();

最佳答案

content-length 是服务器设置的一个header。我会检查以确保您的服务器返回正确的内容长度。你可以用 cUrl 做到这一点:

curl -v http://path/to/file.txt

这应该会显示已发送和返回的 header 。

关于java - 请求方法 GET 返回错误的内容长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21026166/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com