1 回答
TA贡献1851条经验 获得超4个赞
正斜杠总是有效,在 Windows 上也是如此。
并且反斜线绝对不适用于 URL。
在您对 Abra 做出回应后,我更了解您想做什么。您需要将 URL 作为输入流打开,并创建一个指向本地文件的新输出流。
文件理解 http 布局,因此您可以使用它来获取包含文件名的 url 的最后一部分(参见变量 f):
File 也有一个带有 2 个参数的构造
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;
public class InternetReader {
private static void copyInputStreamToOutputstream(InputStream in, OutputStream out) throws IOException {
byte[] buf = new byte[1024];
int len;
while ((len = in.read(buf)) > 0) {
out.write(buf, 0, len);
}
}
public static void main(String[] args) throws IOException {
File f = new File("http://google.be/test.jpg");
System.out.println(f.getName());
File localPath = new File("/cdn/opt");
File localDestination = new File(localPath, f.getName());
URL remoteURL = new URL("http://google.be/test.jpg");
try (InputStream is = remoteURL.openStream(); OutputStream os = new FileOutputStream(localDestination)) {
copyInputStreamToOutputstream(is, os);
}
}
}
添加回答
举报