-1
ハンドラが存在しないSAX APIのAndroid簡易版を使用してKMLファイルを解析しています。ルート要素名が一致しません。予想される
java.lang.RuntimeException: android.sax.BadXmlException: Line 2: Root element name does not match. Expected: 'kml', Got: 'http://www.opengis.net/kml/2.2:kml'
これは、解析されているファイルの始まりです:
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2"> etc...
私の問題は、
RootElement root = new RootElement("kml");
に私の呼び出しは私にこのようなエラーを与えてクラッシュしていることですこの本を読むつもりですが、それでもエラーが発生しています。私はこれにスタックオーバーフロー時に他のポストを見ましたが、SAXParserFactoryに関連しており、XML Schemaの検証を無効にすることができます。残念ながら、ここで私はできません。
ありがとうございます!
KML名前空間を指定しようとしましたか。例えばRootElement root = new RootElement( '' http://opengis.net/kml/2.2 "'、 "kml") – JasonM1
@ JasonM1はうまくいきました。 URLが "harcdcoded"なので、将来、KMLの名前空間を変更するとどうなりますか?アプリは再びクラッシュするだろうか? – Javi
名前空間はあなたが解析しているものと一致する必要があります。 – JasonM1