javaでxmlを解析したいと思いまして、DocumentBuilderを使って以下のコードを書きました。
ネットでもよく見るコードなのですが、
// ドキュメントビルダーファクトリを生成
DocumentBuilderFactory dbfactory = DocumentBuilderFactory.newInstance();
// ドキュメントビルダーを生成
DocumentBuilder builder = dbfactory.newDocumentBuilder();
Document doc = builder.parse(new ByteArrayInputStream(xml.getBytes()));
xmlのデータはxml.getBytes()で正常に取得できていたので、
後はdocを解析して対象のタグを抽出するだけなのですが、
試しに、docそのものを出力したところコンソールにnullとの記載が。
docに何も入っていないと勘違いしてしまい、builder.parseが正常に動作してないと疑ってしまいましたが、
実はdocの出力の仕方がまずかっただけで、正しくxmlをparseできていました。
Document docの後に、
Element root = doc.getDocumentElement();
NodeList list = root.getElementsByTagName("タグ名");
とすればxmlの解析情報が入っていました。
この事実にすぐに気がつけず無駄な時間を費やしてしまった。反省です。