gpt4 book ai didi

java - 如何使用 Java 从 Web 服务保存大文件?

转载 作者:行者123 更新时间:2023-12-01 17:31:00 26 4
gpt4 key购买 nike

我必须调用一个 REST Web 服务,该服务以 xml 形式返回大量数据。数据大小约为490m。每次我尝试调用该服务时,我都会耗尽内存。我想做的就是将这些数据写入文件。

有没有办法以小块的形式读写数据以避免内存不足?

这是我尝试过的;

public class GetWs {

private static String url ="http://somewebservice";
public static void main(String[] args) {

InputStream in;
OutputStream out;
try {
out = new FileOutputStream("testoutfile.txt");
in = new URL(url).openStream();
int b;
do {
b = in.read();
if (b != -1) {
out.write(b);
out.flush();
}
} while (b != -1);
in.close();out.close();
} catch (Exception e) {
e.printStackTrace();
}

}

}

最佳答案

尝试压缩并流式传输到文件输出流,最好使用 NIO。

如果您必须解析和验证 XML,请尝试使用 STAX 解析器。

关于java - 如何使用 Java 从 Web 服务保存大文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10914881/

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