生成xml 文件之SAX 方法

博客介绍可通过解析Xml的SAX方法详细了解SAX,但未作介绍,仅提供了相关代码及案例。

通过解析Xml 之SAX 方法可以详细了解SAX,这里不做介绍,只提供代码:

案例如下:

	       //1生成一个SAXTransformFacotry 对象
		SAXTransformerFactory transformerFactory = (SAXTransformerFactory) SAXTransformerFactory.newInstance();
		try {
		//2通过SAXTransformFacotry 对象创建一个TransformerHandler 对象
			TransformerHandler handler  = transformerFactory.newTransformerHandler();
		// 3通过TransformerHandler 对象创建一个transformer 对象
			Transformer transformer  = handler.getTransformer();
		// 4通过transformer 可以设置输出格式, 注意必须在hanlder 设置result之前设置才有效
			transformer.setOutputProperty(OutputKeys.INDENT, "yes");
			transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
			
		
			File file = new File("src/newbooks.xml");
			if(!file.exists()) {
				file.createNewFile();
			}
			//5 创建一个Result 对象 并且将其与handler 对象关联起来
			Result result = new StreamResult(new FileOutputStream(file));
			handler.setResult(result);
			//6 利用hanlder 对象对xml 进行编写
			//打开文档
				handler.startDocument();
				AttributesImpl attr = new AttributesImpl(); 
				handler.startElement("", "", "bookstore", attr);
				
			    attr.clear();
			    attr.addAttribute("", "", "id", "", "1");
			    handler.startElement("", "", "book", attr);
			    attr.clear();
			    handler.startElement("", "", "name", attr);
			    handler.characters("人性的弱点".toCharArray(), 0, "人性的弱点".length());
			    handler.endElement("", "", "name");
			    handler.endElement("", "", "book");
				handler.endElement("", "", "bookstore");
				handler.endDocument();
			
		} catch (TransformerConfigurationException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} catch (SAXException e) {
			e.printStackTrace();
		}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值