问题描述
- 从 url 中下载文件时的错误
-
我想从url中读取一个文件,然后定义它为一个File Typepublic File fileFromUrl(String str) throws IOException { File file = new File ("image.png"); URL url = new URL (str); InputStream input = url.openConnection().getInputStream(); try { OutputStream output = new FileOutputStream (file); try { byte[] buffer = new byte[1024]; int bytesRead = 0; while ((bytesRead = input.read(buffer, 0, buffer.length)) >= 0) { output.write(buffer, 0, bytesRead); } } finally { output.close(); } } finally { input.close(); } return file; }
但是代码在
OutputStream output = new FileOutputStream (file);
处出错了。
请问如何定义 URl 中的文件?
解决方案
/**
* Constructs a new file using the specified path.
*
* @param path
* the path to be used for the file.
*/
public File(String path) {
this.path = fixSlashes(path);
}
这是File的构造方法,你那是找不到文件的 path应该是绝对路径
解决方案二:
首先
File file = new File ("image.png");
OutputStream output = new FileOutputStream (file);
肯定会报错,因为这个图片不存在。
如果你想通过URL得到outputStream可以如下:
url.openConnection().getOutputStream();
因为URL就是URL和普通的File是不一样的,但都能取到流!
希望可以帮到你!
时间: 2024-10-26 21:12:26