gpt4 book ai didi

java - 来自带有 http 或 https 的 URL 的文件对象

转载 作者:太空宇宙 更新时间:2023-11-04 09:56:50 25 4
gpt4 key购买 nike

可以从URL中获取File对象吗?我尝试类似的东西

URL url = new URL(urlString);
File file = Paths.get(url.toURI()).toFile();

但它获得了异常

java.nio.file.FileSystemNotFoundException: Provider "http" not installed

或 https...取决于所使用的协议(protocol)。假设 urlString 包含有效地址。

是否存在从 URL 获取 File 对象的替代方法,或者我走错了路?

最佳答案

您需要打开到 URL 的连接,开始获取服务器发送给您的字节,并将它们保存到文件中。

使用 Java NIO

URL website = new URL("http://www.website.com/information.asp");
ReadableByteChannel rbc = Channels.newChannel(website.openStream());
FileOutputStream fos = new FileOutputStream("information.html");
fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);

使用 Apache 通用 IO

另一种方法是使用 apache common io库,你可以这样做:

URL url = new URL(urlString);
File file = new File("filename.html");
FileUtils.copyURLToFile(url, file);

关于java - 来自带有 http 或 https 的 URL 的文件对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54040509/

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