温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Json和xml的拼接和解析

发布时间:2020-06-27 01:49:56 来源:网络 阅读:919 作者:祝你幸福365 栏目:移动开发
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;k<array.length();k++){	JSONObject o=(JSONObject) array.get(k);	String patient_id=o.getString("patient_id");	String visit_id=o.getString("visit_id");	System.out.println("patient_id.."+patient_id+"..visit_id.."+visit_id);	}	HashMap<String,String> map=new HashMap<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"); //	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<String, String> map){	//Map集合中键是patient_id  值是visit_id	// [{'patient_id','120','visit_id','11122'},{},{}]	StringBuffer requestJson=new StringBuffer();	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();	      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<String, String> map){	//Map集合中键是patient_id  值是visit_id	String requestXML="";	try {	Set<Entry<String, String>> set=map.entrySet();	Iterator<Entry<String,String>> 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<String, String> 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;	} }


附件:http://down.51cto.com/data/2365330
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI