gpt4 book ai didi

java - 如何在java中下载文件?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:39:41 25 4
gpt4 key购买 nike

我已经尝试了几个字节 while 循环方法和下面的这个方法:

try {
URL dl = null;
dl = new URL("http://ds-forums.com/kyle-tests/uploads/Screenshots.zip");
ReadableByteChannel rbc = Channels.newChannel(dl.openStream());
FileOutputStream fos = new FileOutputStream(fileName + "Screenshots.zip");
fos.getChannel().transferFrom(rbc, 0, 1 << 24);
System.out.println(fos.getChannel().size());
fos.close();
rbc.close();
} catch (Exception e) {
e.printStackTrace();
}

}

但是这些方法并不是非常有效/快速。我发现了有关 Apache Utils 的信息,并且正在使用

 IOUtils.copy(new URL("http://ds-forums.com/kyle-tests/uploads/Screenshots.zip").openStream(), new FileOutputStream(System.getProperty("user.home").replace("\\", "/") + "/Desktop/Screenshots.zip"));

但这是最好的方法吗?我现在很困惑哪种方法最适合下载 26mb 的压缩文件。 (上面的文件只有1mb,我正在测试方法)

我只是想看看是否有人遇到过这个问题,也许他们可以帮助我。谢谢。

最佳答案

如果您已经在类路径上使用 Commons IO

org.apache.commons.io.FileUtils.copyURLToFile(URL, File)

它负责打开和关闭的所有流内务处理以及在 File 的父级上调用 mkdirs。

关于java - 如何在java中下载文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4698109/

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