我正在尝试从给定的网址下载文件。该URL不是直接文件URL。当手动在浏览器中提供此URL时,我们会收到下载/保存提示。
例如,http://www.my-domain.com/download/type/salary/format/excel
我在URL中没有问题直接在URL中有文件名。在上面的URL中,服务器根据格式和类型生成文件。
在Java中我试图使用以下代码下载文件。文件已创建,但内容只是域内容,而不是实际的Excel数据。
URL url = new URL("http://www.my-domain.com/download/type/salary/format/excel");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
float totalDataRead = 0;
BufferedInputStream in = new BufferedInputStream(connection.getInputStream());
FileOutputStream fos = new FileOutputStream("c:\\test.xls");
BufferedOutputStream bout = new BufferedOutputStream(fos, 1024);
byte[] data = new byte[1024];
int i = 0;
while ((i = in.read(data, 0, 1024)) >= 0) {
totalDataRead = totalDataRead + i;
bout.write(data, 0, i);
}
bout.close();
in.close();
答案 0 :(得分:0)
内容是服务器为该URL发送的内容。你无法从客户端做任何事情。如果它包含Javascript,例如它就不会被执行。
答案 1 :(得分:0)
当你想解决问题时,你必须使用足够的工具来完成任务。可以在poi.apache.org找到适当的工具。
看看Apache POI。