Falha na análise XML do Android Token inesperado
No meu aplicativo (jogo), eu preciso ler um script XML e me transformar em um objeto de classe; Eu completei todo o leitor de XML via DOM
mas quando eu corro, eu tenho o seguinte erro:
<code>05-08 23:03:22.342: I/System.out(588): XML Pasing Excpetion = org.xml.sax.SAXParseException: Unexpected token (position:TEXT ��������������������...@1:69 in java.io.InputStreamReader@4129a200) </code>
Eu li algumas respostas sobre isso, mas todos eles não conseguiram resolver o meu problema (http://stackoverflow.com/questions/7885962/android-utf-8-file-parsing) ..
aqui está meu código:
<code> InputStream inputStream = ctx.getResources().openRawResource(R.xml.script); ctx.getApplicationContext().getPackageName()+"/xml/"+path); Reader reader = new InputStreamReader(inputStream,"UTF-8"); InputSource is = new InputSource(reader); is.setEncoding("UTF-8"); DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); DocumentBuilder db = dbf.newDocumentBuilder(); Document root = db.parse(is); </code>
De acordo com o problema, eu também tentei isso para:
<code> InputStream inputStream = ctx.getResources().openRawResource(R.xml.script); Document root = db.parse(inputStream); </code>
que produziu exatamente as mesmas exceções ...
Como resolver este problema?
meu arquivo xml:
<code><script> <scene no="0"> <character id="1">1</character> <dialog no="1"> <title>1</title> Sub-Element 1 </dialog> </scene> </script> </code>