创建XML(3/4)--通过DOM4J方式

注:生成如下rss.xml


  • 一、RSS

  • 二、生成RSS根节点+version属性

document.addElement("rss");
根节点.addAttribute("version", "2.0");
  • 三、生成子节点和内容,并且设置换行

//添加节点+文本
根节点.addElement("channel");
节点.setText("迎春花回怼:错!错!错!错!");
  • 四、处理转义字符

.setEscapeText(false)

  • 一、RSS

描述和同步网站内容的格式

  • 二、生成RSS根节点+version属性
//1、创建document对象(XML文档)
		Document document = DocumentHelper.createDocument();
		//2、创建根节点RSS
		Element rss = document.addElement("rss");
		//3、向RSS根节点添加version属性
		rss.addAttribute("version", "2.0");
		//4、生成XML文件
		File file = new File("rss.xml");
		try {
			XMLWriter writer = new XMLWriter(new FileOutputStream(file));
			writer.write(document);
			writer.close();
			System.out.println("创建文件成功...");
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		}catch (IOException e) {
			e.printStackTrace();
		}
  • 三、生成子节点和内容,并且设置换行
//4、生成子节点+节点内容
		//Element channel = rss.addElement("channel", "20");
		Element channel = rss.addElement("channel");
		Element title = channel.addElement("title");
		title.setText("迎春花回怼:错!错!错!错!");
		//5、设置XML格式
		OutputFormat format = OutputFormat.createPrettyPrint();
		format.setEncoding("GBK");
		//6、生成XML文件
		File file = new File("rss.xml");
		try {
			XMLWriter writer = new XMLWriter(new FileOutputStream(file),format);
			writer.write(document);
			writer.close();
			System.out.println("创建文件成功...");
		} catch (IOException e) {
			e.printStackTrace();
		}
  • 四、处理转义字符

如果文本中有

		title.setText("<![CDATA[迎春花回怼:错!错!错!错!]]>");

<>等特殊字符,会自动转义,通过以下设置解决自动转义问题

writer.write(document);

完整代码

public void createXML() {
		//1、创建document对象(XML文档)
		Document document = DocumentHelper.createDocument();
		//2、创建根节点RSS
		Element rss = document.addElement("rss");
			//3、向RSS根节点添加version属性
			rss.addAttribute("version", "2.0");
		//4、生成子节点+节点内容
		//Element channel = rss.addElement("channel", "20");
		Element channel = rss.addElement("channel");
		Element title = channel.addElement("title");
		title.setText("<![CDATA[迎春花回怼:错!错!错!错!]]>");
		//5、设置XML格式
		OutputFormat format = OutputFormat.createPrettyPrint();
		format.setEncoding("GBK");
		//6、生成XML文件
		File file = new File("rss.xml");
		try {
			XMLWriter writer = new XMLWriter(new FileOutputStream(file),format);
			//设置是否转义,默认为true,表示转义
			writer.setEscapeText(false);
			writer.write(document);
			writer.close();
			System.out.println("创建文件成功...");
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		}catch (IOException e) {
			e.printStackTrace();
		}
	}

翻译自慕课网:https://www.imooc.com/video/5255

猜你喜欢

转载自blog.csdn.net/qq_37335810/article/details/81112902
今日推荐