展开全部
用这个吧,这个方法是我从apache commons中扒62616964757a686964616fe78988e69d8331333335323431下来的,没有问题的,记得采纳啊/**
* 从URL抓取一个文件写到本地
* 这个方法摘自 org.apache.commons.io.FileUtils.copyURLToFile(URL source, File destination)
* @param source
* @param destination
* @throws IOException
*/
public static void copyFileFromURL(URL source, File destination) throws IOException {
InputStream input = null;
FileOutputStream output = null;
byte[] buffer = new byte[1024];
input = source.openStream();
if (destination.exists()) {
if (destination.isDirectory()) {
throw new IOException("File '" + destination
+ "' exists but is a directory");
}
if (destination.canWrite() == false) {
throw new IOException("File '" + destination
+ "' cannot be written to");
}
} else {
File parent = destination.getParentFile();
if (parent != null) {
if (!parent.mkdirs() && !parent.isDirectory()) {
throw new IOException("Directory '" + parent
+ "' could not be created");
}
}
}
output = new FileOutputStream(destination, true);
int n = 0;
while (-1 != (n = input.read(buffer))) {
output.write(buffer, 0, n);
}
output.close();
input.close();
}