I am trying to parse an xml file which is similar to string.xml file under res folder. But while parsing I am getting exception. Below is my xml file.
<!-- Enrollment Messages -->
<string name="configure_email_text">No corporate email accounts have been configured on this device. To configure them, click <b>Configure Email</b></string>
<string name="invalid_credentials">Authentication failed. Enter valid credentials.</string>
<string name="invalid_passcode">Authentication failed. Enter valid Passcode.</string>
And below is my code which I am using to parse XML.
private void loadXML()
{
// TODO Auto-generated method stub
InputStream ins = null;
try{
//Debug.startMethodTracing("parsingdetail");
ins=getAssets().open("strings.xml");
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
// factory.setNamespaceAware(true);
XmlPullParser xpp = factory.newPullParser();
xpp.setFeature(XmlPullParser.FEATURE_PROCESS_NAMESPACES, false);
xpp.setInput(ins, null);
parseXml(xpp);
int j=hMap.size();
if(j>0){
System.out.println("Anuj Kumar Jha "+j);
}
}catch(XmlPullParserException e){
System.out.println("anuj kumar jha"+e);
e.printStackTrace();
}catch(IOException e){
System.out.println("anuj kumar jha"+e);
e.printStackTrace();
}
finally{
if(ins!=null){
try {
ins.close();
}
catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
private void parseXml(XmlPullParser parser) throws XmlPullParserException,IOException
{
// TODO Auto-generated method stub
int eventType=parser.getEventType();
while(eventType!=XmlPullParser.END_TAG){
String key=null;
String value=null;
switch(eventType){
case XmlPullParser.START_TAG:
String name=parser.getName();
if(name.equalsIgnoreCase("string")){
key=parser.getAttributeValue(null,"name");
value=parser.nextText();
hMap.put(key, value);
if(parser.getEventType()!=XmlPullParser.END_TAG){
parser.nextTag();
}
}
}
eventType=parser.next();
}
}
And Below is the Exception I am getting .
01-18 12:19:10.506: I/System.out(16115): anuj kumar jhaorg.xmlpull.v1.XmlPullParserException: END_TAG expected (position:START_TAG @5:137 in java.io.InputStreamReader@42b54168)
I think it is because of tag in first string tag. How to fix this issue.?
No comments:
Post a Comment