我有一个我想用 Java 下载的图像列表。这有效:
for (String i : link_array) {
File image = new File(outputFolderImages, image_id+".gif");
if (!image.exists()) {
System.out.println("Downloading: "+i+" to file "+image);
FileUtils.copyURLToFile(new URL(i), image, 10000, 10000);
}
}
但是,我正在编写的程序的不同部分需要使用图像链接中已有的路径。因此,如果这是链接,我想将图像另存为05785.gif
. 所以我尝试了这个:
for (String i : link_array) {
String x = i.replace("http://www.mspaintadventures.com/storyfiles/hs2/","");
File image = new File(outputFolderImages, x);
if (!image.exists()) {
System.out.println("Downloading: "+i+" to file "+image);
FileUtils.copyURLToFile(new URL(i), image, 10000, 10000);
}
}
但这会引发错误:
Exception in thread "main" java.io.FileNotFoundException: C:\Users\Ian\Homestuck\images\05785.gif
(The filename, directory name, or volume label syntax is incorrect)
即使这是一个有效的文件路径;我已经使用上面的第一个代码位保存了数百张其他图像。我怎样才能解决这个问题?