如何使用Java从Internet下载和保存文件?

有一个在线文件(如http://www.example.com/information.asp)我需要抓取并保存到一个目录中。我知道有几种方法可以一行一行地抓取和读取在线文件(URL),但是有没有一种方法可以使用Java下载和保存文件

给出Java NIO一次尝试:

URL网站=新URL(“http://www.website.com/information.asp");
ReadableByteChannel rbc=Channels.newChannel(website.openStream());
FileOutputStream fos=新的FileOutputStream(“information.html”);
fos.getChannel().transferFrom(rbc,0,Long.MAX_值);

使用transferFrom()可能比从源通道读取并写入此通道的简单循环效率更高。许多操作系统可以直接将字节从源通道传输到文件系统缓存,而无需实际复制它们

查看更多信息此处

注意:transferFrom中的第三个参数是要传输的最大字节数Integer.MAX_VALUE最多传输2^31个字节,Long.MAX_VALUE最多允许传输2^63个字节(大于现有的任何文件)

发表评论