내 Eclipse android 응용 프로그램의 assets 폴더에 xml 파일이 있는데 읽고 싶습니다.애셋에서 xml 파일 읽기
이<question>
<text>Most?</text>
<answer correct="false">10</answer>
<answer correct="true">11</answer>
<answer correct="false">8</answer>
<answer correct="false">9</answer>
</question>
<question>
<text>Which?</text>
<answer correct="false">Titanic</answer>
<answer correct="false">American</answer>
<answer correct="true">:King</answer>
<answer correct="false">Yes</answer>
</question>
<question>
<text>First?</text>
<answer correct="false">John</answer>
<answer correct="true">James</answer>
<answer correct="false">Peter</answer>
<answer correct="false">Jean</answer>
</question>
여기 내 코드입니다 :
while (eventType != XmlPullParser.END_DOCUMENT){
String name = null;
switch (eventType){
case XmlPullParser.START_DOCUMENT:
myItems = new ArrayList();
break;
case XmlPullParser.START_TAG:
case XmlPullParser.TEXT:
name = parser.getName();
if (name != null && answers == null && myItem == null) {
answers = new ArrayList();
myItem = new MyItem();
}
if (name.equals("text")){
myItem.setQuestion(parser.nextText());
} else if (name.equals("answer")){
answers.add(new Answer(parser.nextText(), false));
myItem.setAnswers(answers);
}
break;
case XmlPullParser.END_TAG:
name = parser.getName();
if (name.equalsIgnoreCase("question") && quizItem != null){
quizItems.add(quizItem);
}
}
eventType = parser.next();
}
지금이 작동하지 않습니다
여기에 파일의 텍스트입니다. 먼저 START_DOCUMENT에 대한 case 문이 입력됩니다. 두 번째 루프에서 TEXT case가 입력되고 parser.getName()의 값은 "text"입니다. '질문'은 건너 뜁니다. 왜 이런 일이 일어나는 걸까요?
이 문서는 – Raghunandan
내가 당신을 제안 할 것이라는 점을 확인 했의 좋은 예입니다 'SaxParser'를 사용하십시오 ... 다른 것들보다 쉽고 빠릅니다. –
@HamidShatu xmlpullparser는 Google http://developer.android.com/training/basics/network-ops/xml.html에서 추천합니다. – Raghunandan