Android生成XML并解析成JSON格式
来源:互联网 发布:bi软件安卓版 编辑:程序博客网 时间:2024/05/26 19:17
1.生成XML格式的字符串或者保存为.xml文件
public static String writerXMLStr(String tag1, String tag2, String tag3,String tag4) {XmlSerializer serializer = Xml.newSerializer();StringWriter writer = new StringWriter();String result = null;String NAMESSPACE = "";try {serializer.setOutput(writer);//设置输出类型 字符串/* *将数据写入文件 File file = new File( Environment.getExternalStorageDirectory().getAbsolutePath()+"/test.xml");file.createNewFile();FileOutputStream fileOutputStream = new FileOutputStream(file);serializer.setOutput(fileOutputStream,"utf-8");*/serializer.startDocument("utf-8", null);// true-->显示standalone = 'yes' (默认值)// false-->显示standalone = 'no'// null-->不显示standalone//值 no 表示这个 XML 文档不是独立的而是依赖于外部所定义的一个 DTD. 值 yes 表示这个 XML 文档是自包含的(self-contained).serializer.startTag("", "ROOT");// serializer.startTag(NAMESSPACE, "PARAM");serializer.startTag(NAMESSPACE, "tag1");serializer.text(tag1);serializer.endTag(NAMESSPACE, "tag1");serializer.startTag(NAMESSPACE, "tag2");serializer.attribute(NAMESSPACE, "name", tag2);serializer.attribute(NAMESSPACE, "pwd", "123");serializer.endTag(NAMESSPACE, "tag2");serializer.startTag(NAMESSPACE, "tag3");serializer.text(tag3);serializer.endTag(NAMESSPACE, "tag3");serializer.startTag(NAMESSPACE, "ARRAY");serializer.startTag(NAMESSPACE, "tag4");serializer.text(tag4);serializer.endTag(NAMESSPACE, "tag4");serializer.startTag(NAMESSPACE, "tag4");serializer.text(tag4);serializer.endTag(NAMESSPACE, "tag4");serializer.startTag(NAMESSPACE, "tag4");serializer.text(tag4);serializer.endTag(NAMESSPACE, "tag4");serializer.endTag(NAMESSPACE, "ARRAY");// serializer.endTag(NAMESSPACE, "PARAM");serializer.endTag(NAMESSPACE, "ROOT");serializer.endDocument();result = writer.toString();serializer.flush();//将数据刷新到文件中//fileOutputStream.close();Log.d("zhu", "XML内容:" + result);} catch (IllegalArgumentException e) {e.printStackTrace();} catch (IllegalStateException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();Log.d("zhu", e.getMessage());}return result;}2.通过上一个方法拿到xml格式的字符串内容并解析成json格式
生成的xml内容如下
<?xml version='1.0' encoding='utf-8' ?><ROOT><tag1>早上好</tag1><tag2 name="马克" pwd="123" /><tag3>GD-9</tag3><ARRAY><tag4>12345</tag4><tag4>12345</tag4><tag4>12345</tag4></ARRAY></ROOT>可以看到xml标签有字符串也有数组
将xml内容使用XMLDecode解析
XMLDecode serializer = new XMLDecode();JSON xml = serializer.read(xmlString);String xml2Json = xml.toString();try {JSONObject jsonData = new JSONObject(xml2Json);((TextView) findViewById(R.id.content_json)).setText(jsonData.toString());} catch (JSONException e) {// TODO Auto-generated catch blocke.printStackTrace();}
解析出来的json内容如下
{"ARRAY":["12345","12345","12345"],"tag1":"早上好","tag2":{"@name":"马克","@pwd":"123"},"tag3":"GD-9"}使用这个方法要导入5个jar包和1个工具类,附件上传
3.XMLDecode工具类及其jar包下载
0 0
- Android生成XML并解析成JSON格式
- Android中的xml、json格式数据解析
- Android解析xml和json格式数据
- Android中的xml、json格式数据解析
- Android中的xml、json格式数据解析
- Android中的xml、json格式数据解析
- android 将数据转换成JSON数据格式并使用JSONObject解析JSON格式的数据
- 生成xml并解析
- Android访问网络系列之--服务端返回XML或JSON格式数据,Android 进行解析并显示
- Android访问网络:服务端返回XML或JSON格式数据,Android 进行解析并使用ListView显示
- json格式生成xml文件
- Android开发中使用fastJSON将json格式的数据快速解析生成实体类并附上实体类生成器
- 解析、生成JSON格式数据
- Android调用接口,获取并解析数据(json格式)
- Android 开发实践 解析XML和JSON格式的数据
- Android—(获取并解析xml和Json)
- android---(xml、json解析)
- Android xml、JSON解析
- lk中中断的处理flow
- Android入门.第一课
- 邮件签名的图片
- Python2与Python3的区别(八):commands与subprocess
- 笔试选择题十一
- Android生成XML并解析成JSON格式
- 分片(Sharding)的全局ID生成
- java抽象类
- python操作Mysql数据库
- git库创建和XMPP下载地址 ios值得学习的博客地址
- django环境搭建
- iOS UITableView 删除Sections()
- 卓越的管理者都是人格分裂
- Media Data之多媒体数据库(三)MediaStore