これは私を夢中にさせています。このコードをさまざまなプロジェクトで使用してきましたが、この種のエラーが発生したのはこれが初めてです。これは XML ファイル全体です。
<layers>
<layer name="Layer 1" h="400" w="272" z="0" y="98" x="268"/>
<layer name="Layer 0" h="355" w="600" z="0" y="287" x="631"/>
</layers>
DocumentBuilderFactory を使用して、入力された Xml を解析する自作 Xml クラスのコードの一部を次に示します。
public static Xml parse(String xmlString)
{
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
dbf.setNamespaceAware(true);
Document doc = null;
//System.out.print(xmlString);
try
{
doc = dbf.newDocumentBuilder().parse(
new InputSource(new StringReader(xmlString)));
// Get root element...
Node rootNode = (Element) doc.getDocumentElement();
return getXmlFromNode(rootNode);
} catch (ParserConfigurationException e)
{
System.out.println("ParserConfigurationException in Xml.parse");
e.printStackTrace();
} catch (SAXException e)
{
System.out.println("SAXException in Xml.parse ");
e.printStackTrace();
} catch (IOException e)
{
System.out.println("IOException in Xml.parse");
e.printStackTrace();
}
return null;
}
私が使用しているコンテキストは、Photoshop タイプの画像操作アプリケーションを作成する学校のプロジェクトです。ファイルはレイヤーとともに.pngとして保存され、このxmlファイルは.zipファイル内のレイヤーの位置などに使用されます。圧縮によって謎の余分な文字が追加されているかどうかはわかりません。
フィードバックをお待ちしております。