XML生成的方式

这是第一种方式:StringBuilder 

//以拼接字符串方式生成xml文件,面向过程

	public void genXml(View v){
//		<?xml version="1.0" encoding="UTF-8" standalone="true"?>
//		<map>
//		<boolean value="false" name="isChecked"/>
//		</map>
		
		StringBuilder sb = new StringBuilder();
		sb.append("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"true\"?>");
		sb.append("<map>");
		sb.append("<boolean value=\"false\" name=\"isChecked\"/>");
		sb.append("</map>");
		
		String xml = sb.toString();
		
		Toast.makeText(this, xml, Toast.LENGTH_LONG).show();
	}

这是第二种方式:XmlSerializer 

public void genXml2(View v){
		try {
			//获得一个序列化器
			XmlSerializer xmlSerializer = Xml.newSerializer();
			
			//android应用程序中,默认只将文件保存在/data/data/自己的包名/
			File file = new File("/data/data/com.itheima.genxml/test.xml");
			FileOutputStream fos = new FileOutputStream(file);
			
			//将输出流传给序列化器对象,并指定编码
			xmlSerializer.setOutput(fos, "utf-8");
			
			//写文档开头
			xmlSerializer.startDocument("utf-8", true);
			
			//写文档的开始标签
			xmlSerializer.startTag(null, "map");
			
			//写文档的开始标签
			xmlSerializer.startTag(null, "boolean");
				
			xmlSerializer.attribute(null, "value","false");
			xmlSerializer.attribute(null, "name","isChecked");
			//写结束标签
			xmlSerializer.endTag(null, "boolean");
			//写结束标签
			xmlSerializer.endTag(null, "map");
			
			//文档结束
			xmlSerializer.endDocument();
			
			fos.close();
			
			Toast.makeText(MainActivity.this, "生成成功", Toast.LENGTH_SHORT).show();
			
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

	}

下面这个是效果图:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值