【发布时间】:2018-03-11 10:18:55
【问题描述】:
我有一个下载文件按钮,单击该按钮后将从网站下载文件并将其保存到通过 FileChooser 选择的位置和名称,但我正在努力将文件位置和名称传递给 FileOutputStream。
请问大家有什么建议吗?
谢谢,
保罗
这是我的代码:
public void GetFile()
{
try
{
URL url = new URL("https://www.myURL.com/MyFile.xlsx");
FileChooser saveAs = new FileChooser();
saveAs.setInitialFileName("MyFile.xlsx");
saveAs.getExtensionFilters().addAll(new FileChooser.ExtensionFilter("Excel Files", "*.xlsx"));
saveAs.showSaveDialog(null);
System.out.println("File name and location set");
saveFile(url,saveAs.getInitialDirectory());
}
catch(IOException e)
{
e.printStackTrace();
}
}
public void saveFile(URL url, File saveAs) throws IOException {
System.out.println("opening connection");
InputStream in = url.openStream();
FileOutputStream fos = new FileOutputStream(saveAs);
System.out.println("Reading file...");
int length = -1;
byte[] buffer = new byte[1024];
while ((length = in.read(buffer)) > -1) {
fos.write(buffer, 0, length);
}
fos.close();
in.close();
System.out.println("File downloaded");
}
【问题讨论】:
标签: javafx fileoutputstream filechooser