使用jdom创建xml文本并格式化输出为字符串xml

原创 2015年07月10日 10:24:06
import java.io.ByteArrayOutputStream;
import java.io.IOException;

import org.jdom.Attribute;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.Namespace;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;

public class GeneralXML {

	public static void main(String[] args) throws IOException {
		//最终生成输出的xml
		String xml = "<beans   "
				+ "xmlns=\"http://www.springframework.org/schema/beans\"    "
				+ "xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"   "
				+ "xsi:schemaLocation=\"http://www.springframework.org/schema/beans   http://www.springframework.org/schema/beans/spring-beans.xsd\"> "
				+ "version=\"1.0\""
				+ "<bean id=\"user\" class=\"cn.zlz.User\"> "
				+ "<property name=\"sexs\">男</property>" + "</bean>"
				+ "</beans>  ";
//		System.out.println(xml);
		Element root = new Element("beans");
		Document doc = new Document(root);
		//添加第一个声明
		Namespace ns = Namespace.getNamespace("","http://www.w3.org/2001/XMLSchema-instance");
		//这里使用setNamespace
		root.setNamespace(ns);
		//添加第二个声明,xsi,第三个的时候需要用
		Namespace ns1 = Namespace.getNamespace("xsi", "http://www.w3.org/2001/XMLSchema-instance");
		root.addNamespaceDeclaration(ns1);
		//添加 si:schemaLocation 需要使用第二个声明
		root.setAttribute(new Attribute(
				"schemaLocation",
				"http://www.springframework.org/schema/beans   http://www.springframework.org/schema/beans/spring-beans.xsd",
				ns1));
		//添加属性
		root.setAttribute("version", "1.0");
		//创建下级节点
		Element bean = new Element("bean");
		bean.setAttribute("id", "user");
		bean.setAttribute("class", "cn.zlz.User");
		//这里再添加一次声明,不知道为什么不添加这句,会使root的子节点都会有一个 xlmns = ""的属性。
		bean.setNamespace(ns);
		
		Element property = new Element("property");
		property.setAttribute("name", "sexs");
		//添加属性节点
		property.setText("男");
		Element bean1 = new Element("bean1");
		bean1.setNamespace(ns);
		//将节点添加到父节点
		bean.addContent(property);
		root.addContent(bean);
		root.addContent(bean1);
		
		//格式化输出xml文件字符串
		Format format = Format.getCompactFormat();
		format.setEncoding("utf-8");
		//这行保证输出后的xml的格式
		format.setIndent(" ");
		XMLOutputter xmlout = new XMLOutputter(format);
		ByteArrayOutputStream byteRsp = new ByteArrayOutputStream();
		xmlout.output(doc, byteRsp);
		String str = byteRsp.toString("utf-8");
		System.out.println(str);
	}
}

java中用jdom 如何创建xml文档/将数据写入XML中

JDomOutput.java代码如下 -------------------------------------------------------------------------------...
  • zjliwhf
  • zjliwhf
  • 2016年12月09日 11:30
  • 771

用JDOM输出完整的XML文档的例子

 package myPackage;import java.io.*;import org.jdom.*;import org.jdom.input.SAXBuilder;import org.jd...
  • cds27
  • cds27
  • 2006年08月07日 10:30
  • 3532

JDOM读写XML文件实例

转自:http://www.javaeye.com/topic/170511需要的jar包 jdom.jar下载地址:http://jdom.org1.读取xml文件中的元素a. abc.xml  ...
  • java_cxrs
  • java_cxrs
  • 2010年04月12日 10:25
  • 6999

java jdom 将xml转map

package com.shop.util; import java.io.IOException; import java.io.StringReader; import java.util.It...
  • jiana227
  • jiana227
  • 2016年07月25日 14:07
  • 2149

JDom解析和生成XML文档

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本人声明。否则将追究法律责任。 作者:永恒の_☆ 地址:http://blog.csdn.net/chenghui0317...
  • ch656409110
  • ch656409110
  • 2013年09月28日 18:58
  • 7516

jdom生成xml文件

最近项目需要,要自动生成xml数据文件,因此学习了一点东西... 下面就以水果为例子说明如何是用jdom生成xml文件... 具体代码如下: package 每天学习; import ja...
  • ivory_Lei
  • ivory_Lei
  • 2011年10月21日 00:03
  • 7740

JAVA中的XML文件--文件写入

DOM和SAX方式是JAVA官方提供的方式,可以生成一个XML文件来存储信息,DOM4J和JDOM是非官方的方式,可以生成一个RSS文件。1 应用DOM方式写入XML1.1 准备工作 和之前用DOM方...
  • DXZCZH
  • DXZCZH
  • 2016年06月29日 15:52
  • 1503

【java】jdom生成xml文件

上篇介绍了jdom解析xml文件。这篇就介绍jdom生成xml。这样就会对jdom操作xml有一个彻底的了解了。一个是正向解析,另一个是方向生成。 package com.rthb.test; i...
  • zlxdream815
  • zlxdream815
  • 2012年12月05日 16:53
  • 2361

格式化XML字符串的输出

自已用程序拼装的xml串,虽然格式是正确的,但输出时阅读极不方便。采用下面函数可以格式化xml输出,效果和在浏览器中一样private string FormatXml(string sUnforma...
  • Linux7985
  • Linux7985
  • 2011年04月03日 15:27
  • 2888

jdom处理的XML Document 和String 之间的相互转化

package util; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileWriter...
  • wangnetkang
  • wangnetkang
  • 2012年07月31日 19:08
  • 10275
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用jdom创建xml文本并格式化输出为字符串xml
举报原因:
原因补充:

(最多只允许输入30个字)