我看过很多关于如何在 Java 中读取 XML 文件的示例。但它们只显示简单的 XML 文件。例如,他们展示了如何从 XML 文件中提取名字和姓氏。但是我需要从 collada XML 文件中提取数据。像这样:
<library_visual_scenes>
<visual_scene id="ID1">
<node name="SketchUp">
<instance_geometry url="#ID2">
<bind_material>
<technique_common>
<instance_material symbol="Material2" target="#ID3">
<bind_vertex_input semantic="UVSET0" input_semantic="TEXCOORD" input_set="0" />
</instance_material>
</technique_common>
</bind_material>
</instance_geometry>
</node>
</visual_scene>
</library_visual_scenes>
这只是 collada 文件的一小部分。这里我需要提取visual_scene的id,然后是instance_geometry的url,最后是instance_material的target。当然我需要提取更多,但我不明白如何真正使用它,这是一个开始的地方。
到目前为止我有这个代码:
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = null;
try {
builder = factory.newDocumentBuilder();
}
catch( ParserConfigurationException error ) {
Log.e( "Collada", error.getMessage() ); return;
}
Document document = null;
try {
document = builder.parse( string );
}
catch( IOException error ) {
Log.e( "Collada", error.getMessage() ); return;
}
catch( SAXException error ) {
Log.e( "Collada", error.getMessage() ); return;
}
NodeList library_visual_scenes = document.getElementsByTagName( "library_visual_scenes" );
似乎网络上的大多数示例都与此类似:http ://www.easywayserver.com/blog/java-how-to-read-xml-file/
当我想提取更深层次的标签或找到关于阅读/解析 XML 文件的好教程时,我需要帮助来弄清楚该怎么做。