XmlSerializer を使用して XML ファイルを作成しています。私のコードを以下に示します。
Iterator<TypeClass> itr=dataarray.iterator();
while(itr.hasNext()){
try{
TypeClass type=itr.next();
xmlserializer.startTag("", "family");
xmlserializer.startTag("", "FamilyID");xmlserializer.text(type.getF_id());xmlserializer.endTag("", "FamilyID");
xmlserializer.startTag("", "FamilyHead");xmlserializer.text(type.getF_head());xmlserializer.endTag("", "FamilyHead");
xmlserializer.startTag("", "FamilyAddress");xmlserializer.text(type.getH_name());xmlserializer.endTag("", "FamilyAddress");
xmlserializer.startTag("", "Phone");xmlserializer.text(type.getPh_num());xmlserializer.endTag("", "Phone");
xmlserializer.startTag("", "Ward");xmlserializer.text(type.getW_num());xmlserializer.endTag("", "Ward");
xmlserializer.startTag("", "Latitude");xmlserializer.text(String.valueOf(type.getLat()));xmlserializer.endTag("", "Latitude");
xmlserializer.startTag("", "Longitude");xmlserializer.text(String.valueOf(type.getLon()));xmlserializer.endTag("", "Longitude");
xmlserializer.endTag("", "family");
}catch(Exception e){
Log.i("z", "inside while exception :"+e);
}
}
xmlserializer.endTag("", "Families");
FileWriter file=new FileWriter(familyxml);
file.write(writer.toString());
file.flush();
file.close();
私の問題は、ループの最後に一部のデータが XML ファイルに追加されていないことです。ここに私が得るものがあります:
<family><FamilyID>~value~</FamilyID><FamilyHead>NINAN PHILIPOSE</FamilyHead><FamilyAddress>~value~</FamilyAddress><Phone>~value~</Phone><Ward>~value~</Ward><Latitude>0</Latitude><Longitude>0</Longitude></family><family><FamilyID>~value~</FamilyID><FamilyHead>MATHEW M C</FamilyHead><FamilyAddress>~value~
他のタグはありません。