これは、 Oracle から Xml に文字をエンコードする方法のフォローアップの質問です。
私の環境では、Java を使用して結果セットを xml にシリアル化します。出力ストリーム自体にはアクセスできず、org.xml.sax.ContentHandler にしかアクセスできません。
CDATA セクションで文字を出力しようとすると:
基本的に次のように発生します。
xmlHandler.startElement(uri, lname, "column", attributes);
String chars = "<![CDATA["+rs.getString(i)+"]]>";
xmlHandler.characters(chars.toCharArray(), 0, chars.length());
xmlHandler.endElement(uri, lname, "column");
私はこれを得る:
<column><![CDATA[33665]]></column>
しかし、私はこれが欲しい:
<column><![CDATA[33665]]></column>
では、Sax ContentHandler を使用して CDATA セクションを出力するにはどうすればよいでしょうか?