public class MyXMLHandler extends DefaultHandler {
Boolean currentElement = false;
String currentValue = null;
public static SitesList sitesList = null;
public static SitesList getSitesList() {
return sitesList;
}
public static void setSitesList(SitesList sitesList) {
MyXMLHandler.sitesList = sitesList;
}
/** Called when tag starts (ex:- <name>AndroidPeople</name>
* -- <name>)*/
@Override
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
currentElement = true;
if (localName.equals("student_response"))
{
/** Start */
sitesList = new SitesList();
//sitesList.setquizno(currentValue);
}
}
/** Called when tag closing (ex:- <name>AndroidPeople</name>
* -- </name>)*/
@Override
public void endElement(String uri, String localName, String qName)
throws SAXException {
currentElement = false;
/** set value */
if(localName.equalsIgnoreCase("quiz_one"))
{
if (localName.equalsIgnoreCase("quiz_no"))
sitesList.setquizno(currentValue);
//if(Integer.parseInt(sitesList.getquizno().get(Integer.parseInt(currentValue)))==1)
//{
/*else if (localName.equalsIgnoreCase("subject"))
sitesList.setsubject(currentValue);
else if (localName.equalsIgnoreCase("grade"))
sitesList.setgrade(currentValue);
else*/else if (localName.equalsIgnoreCase("question_no"))
sitesList.setquestionno(currentValue);
else if (localName.equalsIgnoreCase("question"))
sitesList.setquestion(currentValue);
else if (localName.equalsIgnoreCase("option1"))
sitesList.setoption1(currentValue);
else if (localName.equalsIgnoreCase("option2"))
sitesList.setoption2(currentValue);
else if (localName.equalsIgnoreCase("option3"))
sitesList.setoption3(currentValue);
else if (localName.equalsIgnoreCase("option4"))
sitesList.setoption4(currentValue);
/*else if (localName.equalsIgnoreCase("option5"))
sitesList.setoption5(currentValue);*/
else if (localName.equalsIgnoreCase("correct_answer"))
sitesList.setcorrectans(currentValue);
/*else if (localName.equalsIgnoreCase("explaination"))
sitesList.setdescription(currentValue);
else if (localName.equalsIgnoreCase("remark"))
sitesList.setremark(currentValue);*/
}
}
/** Called to get tag characters (ex:- <name>AndroidPeople</name>
* -- to get AndroidPeople Character) */
@Override
public void characters(char[] ch, int start, int length)
throws SAXException {
if (currentElement) {
currentValue = new String(ch, start, length);
currentElement = false;
}
}
使用上述代碼我已經解析了在機器人xml文件。
以下是我的xml文件
<?xml version="1.0" encoding="ISO-8859-1"?>
<student_response>
<info>
<quiz_one>
<quiz_no>1</quiz_no>
<subject>general</subject>
<grade>A</grade>
<all_question>
<question_frame>
<question_no>1</question_no>
<question>What is capital of india ?</question>
<option1>Delhi</option1>
<option2>Mumbai</option2>
<option3>Chennai</option3>
<option4>Benglore</option4>
<option5>Kolkata</option5>
<correct_answer>Delhi</correct_answer>
<explaination>Delhi is capital of india....</explaination>
<remark>capital of india </remark>
</question_frame>
<question_frame>
<question_no>2</question_no>
<question>Who is the founder of facebook ?</question>
<option1>James Goslings</option1>
<option2>Dennis Ritchie</option2>
<option3>Bjarne Stroustrup</option3>
<option4>Brian Kernighan's</option4>
<option5>Mark Zuckerberg</option5>
<correct_answer>Mark Zuckerberg</correct_answer>
<explaination>Mark Zuckerberg:facebook </explaination>
<remark>facebook</remark>
</question_frame>
<question_frame>
<question_no>3</question_no>
<question>Who is the current prime minister of india ?</question>
<option1>Pratibha patil</option1>
<option2>Dr. Manmohan singh</option2>
<option3>Rajiv Gandhi</option3>
<option4>Atal bihari vajpayee</option4>
<option5>Moraraji Desai</option5>
<correct_answer>Dr. Manmohan singh</correct_answer>
<explaination>Dr. Manmohan singh:current P.M. </explaination>
<remark>Prime Minister</remark>
</question_frame>
<question_frame>
<question_no>4</question_no>
<question>What does EPROM stand for?</question>
<option1>Electric Programmable Read Only Memory </option1>
<option2>Erasable Programmable Read Only Memory </option2>
<option3>Evaluable Philotic Random Optic Memory</option3>
<option4>Every Person Requires One Mind</option4>
<option5>Evaluable Philotic Random Optic Memory</option5>
<correct_answer>Erasable Programmable Read Only Memory </correct_answer>
<explaination>EPROM stand for Erasable Programmable Read Only Memory </explaination>
<remark>EPROM</remark>
</question_frame>
<question_frame>
<question_no>5</question_no>
<question>Where is the headquarters of Microsoft located?</question>
<option1>Santa Clara, California </option1>
<option2>Tucson, Arizona </option2>
<option3>Richmond, Virginia </option3>
<option4>Redmond, Washington</option4>
<option5>Tucson, Arizona </option5>
<correct_answer>Santa Clara, California </correct_answer>
<explaination>headquarters of Microsoft : Santa Clara, California </explaination>
<remark>Microsoft</remark>
</question_frame>
</all_question>
</quiz_one>
<quiz_two>
<quiz_no>2 </quiz_no>
<subject>Other topic</subject>
<grade>A</grade>
<all_question>
<question_frame>
<question_no>1</question_no>
<question>Who is the current prime minister of india ?</question>
<option1>Pratibha patil</option1>
<option2>Dr. Manmohan singh</option2>
<option3>Rajiv Gandhi</option3>
<option4>Atal bihari vajpayee</option4>
<option5>Moraraji Desai</option5>
<correct_answer>Dr. Manmohan singh</correct_answer>
<explaination>Dr. Manmohan singh:current P.M. </explaination>
<remark>Prime Minister</remark>
</question_frame>
<question_frame>
<question_no>2</question_no>
<question>What does EPROM stand for?</question>
<option1>Electric Programmable Read Only Memory </option1>
<option2>Erasable Programmable Read Only Memory </option2>
<option3>Evaluable Philotic Random Optic Memory</option3>
<option4>Every Person Requires One Mind</option4>
<option5>Evaluable Philotic Random Optic Memory</option5>
<correct_answer>Erasable Programmable Read Only Memory </correct_answer>
<explaination>EPROM stand for Erasable Programmable Read Only Memory </explaination>
<remark>EPROM</remark>
</question_frame>
<question_frame>
<question_no>3</question_no>
<question>Who is the founder of facebook ?</question>
<option1>James Goslings</option1>
<option2>Dennis Ritchie</option2>
<option3>Bjarne Stroustrup</option3>
<option4>Brian Kernighan's</option4>
<option5>Mark Zuckerberg</option5>
<correct_answer>Mark Zuckerberg</correct_answer>
<explaination>Mark Zuckerberg:facebook </explaination>
<remark>facebook</remark>
</question_frame>
<question_frame>
<question_no>4</question_no>
<question>Where is the headquarters of Microsoft located?</question>
<option1>Santa Clara, California </option1>
<option2>Tucson, Arizona </option2>
<option3>Richmond, Virginia </option3>
<option4>Redmond, Washington</option4>
<option5>Tucson, Arizona </option5>
<correct_answer>Santa Clara, California </correct_answer>
<explaination>headquarters of Microsoft : Santa Clara, California </explaination>
<remark>Microsoft</remark>
</question_frame>
<question_frame>
<question_no>5</question_no>
<question>What is capital of india ?</question>
<option1>Delhi</option1>
<option2>Mumbai</option2>
<option3>Chennai</option3>
<option4>Benglore</option4>
<option5>Kolkata</option5>
<correct_answer>Delhi</correct_answer>
<explaination>Delhi is capital of india....</explaination>
<remark>capital of india </remark>
</question_frame>
</all_question>
</quiz_two>
</info>
</student_response>
我的問題是如何從XML在Android的解析只有1個數據塊。從如果我想在時間我可怎麼辦去取只有1例競猜幫助it.Please我