2016-05-09 17 views
2

FileInputStreamReaderクラスを使用してXMLファイルを読み込もうとしています。しかし、大きなファイルXMLを読み込もうとすると、いくつかの問題が発生します。大規模なXMLファイルの読み込みに適しているJavaクラスはどれですか?また、XMLファイルを解析する最も効率的なパーサーは何ですか?xmlファイルとjavaのパーサーを読む

答えて

3

私はDOM解析は、あなたがノードを変更し、あなたが

を変更したい内容を変更することができ、あなたは、XML文書の解析を開始し、このように

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); 
DocumentBuilder docBuilder = factory.newDocumentBuilder(); 
Document doc = docBuilder.parse(yourFile); 

をXMLファイルを解析するための良い方法であると思います

TransformerFactory tf = TransformerFactory.newInstance(); 
Transformer transformer = tf.newTransformer(); 
DOMSource source = new DOMSource(yourDoc); 
StreamResult result = new StreamResult(yourFile); 
transformer.setOutputProperty(OutputKeys.INDENT, "yes"); 
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2"); 
transformer.setOutputProperty(OutputKeys.INDENT, "yes"); 
transformer.transform(source, result); 

この2つ目の部分は、すべての変更を保存することです。 "setOutputPropery"メソッドは必須ではなく、XMLファイルにすばらしいインデントを与えるためにのみ使用されます。