对于一个项目,我需要解析一个XML文件。解析本身可与文件一起使用,但我需要从URL检索文件。如何将URL中的信息保存到文件中?
我已经尝试了这里提供的许多答案,但是自从现在以来,没有一个能按照我希望的方式工作。我尝试的答案之一是:
FILTER LENGTH(u.gacl[* filter contains(CURRENT.permissions,'c') and CURRENT.principal == 'users/12345']) > 0
可悲的是,这不能解决问题,而是告诉我“ URI方案不是“文件””
如果有人可以帮助我解决我的问题,我将非常感激。
答案 0 :(得分:1)
我建议您使用Apache Commons IO库来获取URL的内容,只需一行即可完成操作:
IOUtils.toString(new URL("YOUR_URL_IN_HERE"), "UTF-8");
这会将URL的内容转换为String
,然后您可以将内容写入文件或处理所需的任何其他流中的内容。
在这里您可以找到docs of IOUtils
答案 1 :(得分:0)
使用Java IO,这会将其保存到target.xml文件:
public File createFile(URL url) throws IOException {
File f = new File("C:\\Users\\my-user\\Desktop\\target.xml");
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
OutputStream outStream = new FileOutputStream(f);
String inputLine;
while ((inputLine = in.readLine()) != null) {
outStream.write(inputLine.getBytes());
}
outStream.close();
in.close();
return f;
}