XML のフォーマット単位でクラスを作っておいたほうが、なにかと便利のような気がします。機能的に、ノードを XML の文字列に変換する static メソッドを追加しています。 どちらかというと、テスト用なので、java 的なメソッドは無く厳密なエラー処理はせずに問題があれば空文字列を返すようにしています。ですが、可能性として、get メソッドの戻り値が null である場合もあります。
package com.example.a_lightbox; import java.io.StringWriter; import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import org.w3c.dom.DOMException; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.NodeList; public class GetRssItemValue { private Document xml_data = null; private Element root = null; public GetRssItemValue(Document xml_data) { this.xml_data = xml_data; root = this.xml_data.getDocumentElement(); } public String get(String elName) { String result = ""; try { NodeList node_list = root.getElementsByTagName("item"); NodeList nl = ((Element)node_list.item(0)).getElementsByTagName(elName); result = nl.item(0).getFirstChild().getNodeValue(); } catch (DOMException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); } return result; } public static String getXmlString( Document doc ) { String xml_string = ""; try { StringWriter sw = new StringWriter(); TransformerFactory.newInstance().newTransformer().transform(new DOMSource(doc), new StreamResult(sw)); xml_string = sw.toString(); } catch (Exception e) { e.printStackTrace(); } return xml_string; } }