Json和xml的拼接和解析
package com.minimax.jsonparsedemo; import java.io.StringWriter; import java.util.HashMap; import java.util.Iterator; import java.util.Map.Entry; import java.util.Set; import org.json.JSONArray; import org.json.JSONObject; import org.xmlpull.v1.XmlSerializer; import android.app.Activity; import android.os.Bundle; import android.util.Xml; import android.view.Menu; import android.widget.TextView; public class MainActivity extends Activity { private TextView tv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); tv=(TextView) findViewById(R.id.tv); try { //Json字符串的解析 String json="[{'patient_id':'122331','visit_id':'1231'},{'patient_id':'122332','visit_id':'1232'},{'patient_id':'122333','visit_id':'1233'}]"; JSONArray array=new JSONArray(json); for(int k=0;kmap=new HashMap (); 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"); // String str=getXMLSendData(map); String str=getJsonSendData(map); System.out.println("str..."+str); // Toast.makeText(this, str, Toast.LENGTH_LONG).show(); tv.setText(str); } catch (Exception e) { // TODO: handle exception } } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } public String getJsonSendData(HashMap map){ //Map集合中键是patient_id 值是visit_id // [{'patient_id','120','visit_id','11122'},{},{}] StringBuffer requestJson=new StringBuffer(); requestJson.append("["); Set > set=map.entrySet(); Iterator > ito=set.iterator(); while(ito.hasNext()){ Entry entry=ito.next(); String patient_id=entry.getKey(); String visit_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(","); } int location=requestJson.lastIndexOf(","); requestJson.deleteCharAt(location); requestJson.append("]"); return requestJson.toString(); } public String getXMLSendData(HashMap map){ //Map集合中键是patient_id 值是visit_id String requestXML=""; try { Set > set=map.entrySet(); Iterator > ito=set.iterator(); StringWriter writer=new StringWriter(); XmlSerializer serializer=Xml.newSerializer(); serializer.setOutput(writer); serializer.startDocument("GBK", true); serializer.startTag(null, "patients"); while(ito.hasNext()){ Entry entry=ito.next(); String patient_id=entry.getKey(); String visit_id=entry.getValue(); //在这块进行两种可能的操作 xml json serializer.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 (Exception e) { // TODO: handle exception } return requestXML; } }
10年积累的成都网站建设、成都网站制作经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先建设网站后付款的网站建设流程,更有东辽免费网站建设让你可以放心的选择与我们合作。
附件:http://down.51cto.com/data/2365330
网站栏目:Json和xml的拼接和解析
分享地址:http://myzitong.com/article/jidjee.html