1

サーバーからrawファイルを取得してXMLファイルに変換する必要があるプロジェクトに取り組んでいます。

JAXPを使用してXMLドキュメントを解析できるように、このタスクを実行するのに役立つJavaで利用可能なツールはありますか?

4

4 に答える 4

1

はい。これは、rawファイルのテキストがすでにXMLであることを前提としています。

DocumentBuilderFactoryを取得することから始め、DocumentBuilder次にそのparse()メソッドを使用して、入力ストリームをDocument内部XML表現であるに変換できます。

生のファイルにXML以外のものが含まれている場合は、それを何らかの方法でスキャンし(ここでは独自のコード)、見つけたものを使用して空のから構築しますDocument

次に、通常、Transformerfromを使用してファイル内のXMLテキストTransformerFactoryに変換Documentしますが、もっと簡単な方法があるかもしれません。

于 2010-01-06T13:38:17.067 に答える
1

後で使用するためにオブジェクトが必要になると思います。そのためMyObject、Rawファイルから値をロードする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();

次に、そのドキュメントを使用して要素を作成し、必要に応じて追加できます。

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

しかし、Jørnがあなたの質問へのコメントで述べたように、それはすべて、この「生の」ファイルで何をしたいか、つまりどのようにXMLに変換するかによって異なります。そして、あなただけがそれを知っています。

于 2010-01-06T15:57:57.597 に答える
0

XmlDocumentにロードしようとすると、これで問題ないと思います

于 2010-01-06T13:38:48.033 に答える