如何在 Java 中打开 XML 文档



所以,我正在尝试使用docBuilder.parse(filepath)

这是我的代码的样子:

public void openXMLfile(String filepath) {
try { 
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
Document doc = docBuilder.parse(filepath);
}
catch(Exception e) {
e.printStackTrace();
}
}

我已经编写了文件的绝对路径,即:

C:\Users\"my User account"\Desktop,是"我的用户帐户",替换为我的用户帐户的实际名称

在我的主函数中,看起来像这样:

public static void main(String[] args) {
App aplication = new App();
String filepath = "C:\Users\"my User account"\Desktop";
aplicacao.openXMLfile(filepath);
}

但是,我得到以下错误行:

java.net.MalformedURLException: unknown protocol: c
at java.net.URL.<init>(Unknown Source)
at java.net.URL.<init>(Unknown Source)
at java.net.URL.<init>(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLVersionDetector.determineDocVersion(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(Unknown Source)
at javax.xml.parsers.DocumentBuilder.parse(Unknown Source)
at Trabalho.App.openXMLfile(App.java:39)
at Trabalho.App.main(App.java:70)

谁能澄清我可能做错了什么?可能是文件路径本身吗?

提前非常感谢!

parse 方法采用 URI 作为文件位置,因此类似于 file:///c:/user/

这个问题给出了一些例子 - 一个文件:对应于Windows路径名的URI应该是什么样子的?特别是保罗的评论。

例子也在 https://en.m.wikipedia.org/wiki/File_URI_scheme

相关内容

  • 没有找到相关文章

最新更新