1

我正在做一个项目,我必须从服务器获取原始文件并将其转换为 XML 文件。

java中是否有任何工具可以帮助我完成这项任务,比如可以使用JAXP来解析XML文档?

4

4 回答 4

1

我猜您将需要您的对象以供以后使用,因此请创建MyObject一些 bean,您将从原始文件中加载值,您可以将其写入 someFile.xml

FileOutputStream os = new FileOutputStream("someFile.xml");
XMLEncoder encoder = new XMLEncoder(os);
MyObject p = new MyObject();
p.setFirstName("Mite");
encoder.writeObject(p);
encoder.close();

或者,TransformerFactory 如果您不需要这些对象供以后使用,您可以选择使用。

于 2010-01-06T13:57:31.597 回答
1

JAXP 也可用于创建新的空文档:

    Document dom = DocumentBuilderFactory.newInstance()
                                         .newDocumentBuilder()
                                         .newDocument();

然后,您可以使用该 Document 创建元素,并根据需要附加它们:

    Element root = dom.createElement("root");
    dom.appendChild(root);

但是,正如Jørn在对您的问题的评论中指出的那样,这完全取决于您想对这个“原始”文件做什么:应该如何将它转换为 XML。只有你知道。

于 2010-01-06T15:57:57.597 回答
1

是的。这假定原始文件中的文本已经是 XML。

您从DocumentBuilderFactory获取 a开始DocumentBuilder,然后您可以使用它的parse()方法将输入流转换为 a Document,这是一种内部 XML 表示形式。

如果原始文件包含 XML 以外的其他内容,您需要以某种方式对其进行扫描(此处为您自己的代码)并使用您找到的内容从一个空的Document.

然后我通常使用Transformerfrom a将文件中的 XML 文本TransformerFactory转换Document为 XML 文本,但可能有更简单的方法。

于 2010-01-06T13:38:17.067 回答
0

我认为如果您尝试将其加载到 XmlDocument 中,这会很好

于 2010-01-06T13:38:48.033 回答