我想使用 XPath(Java 中)来解析 XML 文件。然而,这些 XML 文件只能在网络上获得(不能手动下载所有文件(当然,必须“下载”它们才能进行处理)。
所以基本上我的问题是如何获取 URI 对象并将其转换为 File 对象。我需要使用 SCP 或介于两者之间的东西来下载文件吗?任何代码、教程或一般建议将不胜感激。
我试过这个:
URI uri = new URI("http://www.somefiles.com/myfile.xml");
InputStream is = uri.toURL().openStream();
File xmlDocument = new File(uri);
但这给出了 URI 方案不是"file"
错误。
最佳答案
你可以让它变得更复杂,但这也可以像 opening a stream 一样简单。来自 URL。
InputStream in = remoteURI.toURL().openStream();
现在这不是最初请求的 File
对象,但我猜测您的 XPath 库可以处理通用的 InputStream
。如果没有,您必须将上面的 InputStream 保存到临时文件中,并在其上创建一个 File 对象。
关于java - 从 Web 检索并解析 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3238407/