packagecom.minimax.jsonparsedemo;importjava.io.StringWriter;importjava.util.HashMap;importjava.util.Iterator;importjava.util.Map.Entry;importjava.util.Set;importorg.json.JSONArray;importorg.json.JSONObject;importorg.xmlpull.v1.XmlSerializer;importandroid.app.Activity;importandroid.os.Bundle;importandroid.util.Xml;importandroid.view.Menu;importandroid.widget.TextView;publicclassMainActivityextendsActivity{privateTextViewtv;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);tv=(TextView)findViewById(R.id.tv);try{//Json字符串的解析Stringjson="[{'patient_id':'122331','visit_id':'1231'},{'patient_id':'122332','visit_id':'1232'},{'patient_id':'122333','visit_id':'1233'}]";JSONArrayarray=newJSONArray(json);for(intk=0;k<array.length();k++){JSONObjecto=(JSONObject)array.get(k);Stringpatient_id=o.getString("patient_id");Stringvisit_id=o.getString("visit_id");System.out.println("patient_id.."+patient_id+"..visit_id.."+visit_id);}HashMap<String,String>map=newHashMap<String,String>();map.put("101","2000001");map.put("102","2000001");map.put("103","2000001");map.put("104","2000001");map.put("105","2000001");map.put("106","2000001");map.put("107","2000001");map.put("108","2000001");map.put("109","2000001");//Stringstr=getXMLSendData(map);Stringstr=getJsonSendData(map);System.out.println("str..."+str);//Toast.makeText(this,str,Toast.LENGTH_LONG).show();tv.setText(str);}catch(Exceptione){//TODO:handleexception}}@OverridepublicbooleanonCreateOptionsMenu(Menumenu){//Inflatethemenu;thisaddsitemstotheactionbarifitispresent.getMenuInflater().inflate(R.menu.main,menu);returntrue;}publicStringgetJsonSendData(HashMap<String,String>map){//Map集合中键是patient_id值是visit_id//[{'patient_id','120','visit_id','11122'},{},{}]StringBufferrequestJson=newStringBuffer();requestJson.append("[");Set<Entry<String,String>>set=map.entrySet();Iterator<Entry<String,String>>ito=set.iterator();while(ito.hasNext()){Entry<String,String>entry=ito.next();Stringpatient_id=entry.getKey();Stringvisit_id=entry.getValue();requestJson.append("{");requestJson.append("'");requestJson.append("patient_id");requestJson.append("'");requestJson.append(":");requestJson.append("'");requestJson.append(patient_id);requestJson.append("'");requestJson.append(",");requestJson.append("'");requestJson.append("visit_id");requestJson.append("'");requestJson.append(":");requestJson.append("'");requestJson.append(visit_id);requestJson.append("'");requestJson.append("}");requestJson.append(",");}intlocation=requestJson.lastIndexOf(",");requestJson.deleteCharAt(location);requestJson.append("]");returnrequestJson.toString();}publicStringgetXMLSendData(HashMap<String,String>map){//Map集合中键是patient_id值是visit_idStringrequestXML="";try{Set<Entry<String,String>>set=map.entrySet();Iterator<Entry<String,String>>ito=set.iterator();StringWriterwriter=newStringWriter();XmlSerializerserializer=Xml.newSerializer();serializer.setOutput(writer);serializer.startDocument("GBK",true);serializer.startTag(null,"patients");while(ito.hasNext()){Entry<String,String>entry=ito.next();Stringpatient_id=entry.getKey();Stringvisit_id=entry.getValue();//在这块进行两种可能的操作xmljsonserializer.startTag(null,"patient_id");serializer.text(patient_id);serializer.endTag(null,"patient_id");serializer.startTag(null,"visit_id");serializer.text(visit_id);serializer.endTag(null,"visit_id");}serializer.endTag(null,"patients");serializer.endDocument();requestXML=writer.toString();}catch(Exceptione){//TODO:handleexception}returnrequestXML;}}


附件:http://down.51cto.com/data/2365330