http://www.example.com/information.asp我需要获取一个在线文件(例如),并将其保存到目录中。我知道有几种方法可以逐行捕获和读取在线文件(URL),但是有没有一种方法可以使用Java下载和保存文件?
可以使用 Java NIO :
URL website = new URL("http://www.codingdict.com/"); ReadableByteChannel rbc = Channels.newChannel(website.openStream()); FileOutputStream fos = new FileOutputStream("information.html"); fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
使用transferFrom()是可能不是一个简单的循环从源信道的读取和写入这个频道有效得多。许多操作系统可以直接将字节从源通道传输到文件系统缓存中,而无需实际复制它们。
transferFrom()
使用apache commons-io,只需一行代码:
FileUtils.copyURLToFile(URL, File)