java 生成xml并转为字符串
2016-10-28 11:21
302 查看
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Transformer;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.apache.commons.io.output.ByteArrayOutputStream;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
public class test {
private String createXml() {
String xmlString = "";
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
try {
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.newDocument();
document.setXmlStandalone(true);
Element itemInfo = document.createElement("ItemInfo");
document.appendChild(itemInfo);
Element itemStatistics = document.createElement("ItemStatistics");
itemStatistics.setTextContent("商品统计");
itemInfo.appendChild(itemStatistics);
Element items = document.createElement("Items");
itemInfo.appendChild(items);
// 此处可以循环添加
Element item = document.createElement("Item");
items.appendChild(item);
Element itemName = document.createElement("ItemName");
itemName.setTextContent("iPhone");
item.appendChild(itemName);
Element itemNum = document.createElement("ItemNum");
itemNum.setTextContent("3");
item.appendChild(itemNum);
Element itemValue = document.createElement("ItemValue");
itemValue.setTextContent("1000000");
item.appendChild(itemValue);
Element remark = document.createElement("Remark");
remark.setTextContent("配送");
itemInfo.appendChild(remark);
TransformerFactory transFactory = TransformerFactory.newInstance();
Transformer transformer = transFactory.newTransformer();
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
DOMSource domSource = new DOMSource(document);
// xml transform String
ByteArrayOutputStream bos = new ByteArrayOutputStream();
transformer.transform(domSource, new StreamResult(bos));
xmlString = bos.toString();
System.out.println(xmlString);
} catch (Exception e) {
e.printStackTrace();
}
return xmlString;
}
}
结果:
去掉头文件<?xml version="1.0" encoding="utf-8"?>
的办法暂时只能想到:
xmlString.substring(38)
import javax.xml.parsers.DocumentBuilder;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Transformer;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.apache.commons.io.output.ByteArrayOutputStream;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
public class test {
private String createXml() {
String xmlString = "";
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
try {
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.newDocument();
document.setXmlStandalone(true);
Element itemInfo = document.createElement("ItemInfo");
document.appendChild(itemInfo);
Element itemStatistics = document.createElement("ItemStatistics");
itemStatistics.setTextContent("商品统计");
itemInfo.appendChild(itemStatistics);
Element items = document.createElement("Items");
itemInfo.appendChild(items);
// 此处可以循环添加
Element item = document.createElement("Item");
items.appendChild(item);
Element itemName = document.createElement("ItemName");
itemName.setTextContent("iPhone");
item.appendChild(itemName);
Element itemNum = document.createElement("ItemNum");
itemNum.setTextContent("3");
item.appendChild(itemNum);
Element itemValue = document.createElement("ItemValue");
itemValue.setTextContent("1000000");
item.appendChild(itemValue);
Element remark = document.createElement("Remark");
remark.setTextContent("配送");
itemInfo.appendChild(remark);
TransformerFactory transFactory = TransformerFactory.newInstance();
Transformer transformer = transFactory.newTransformer();
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
DOMSource domSource = new DOMSource(document);
// xml transform String
ByteArrayOutputStream bos = new ByteArrayOutputStream();
transformer.transform(domSource, new StreamResult(bos));
xmlString = bos.toString();
System.out.println(xmlString);
} catch (Exception e) {
e.printStackTrace();
}
return xmlString;
}
}
结果:
<?xml version="1.0" encoding="UTF-8"?> <ItemInfo> <ItemStatistics>商品统计</ItemStatistics> <Items> <Item> <ItemName>iPhone</ItemName> <ItemNum>3</ItemNum> <ItemValue>1000000</ItemValue> </Item> </Items> <Remark>配送</Remark> </ItemInfo>
去掉头文件<?xml version="1.0" encoding="utf-8"?>
的办法暂时只能想到:
xmlString.substring(38)
相关文章推荐
- java 生成xml并转为字符串的方法
- 用Java自带API解析XML字符串和生成XML字符串的例子
- java用jdom生成xml文档或字符串
- xml字符串和java实体类相互转换JaxbXmlUtil工具类 附java实体类生成soap接口报文案例
- Java通过XML字符串生成XML物理文件
- java生成xml字符串和创建xml本地文件
- dom4j-生成XML字符串
- dom4j-xml字符串生成XML文件
- JS中将字符串转为XML并读取对象值实例
- Javascript将字符串转为XML并读取对象值
- Java, 文本文件转为字符串
- java中使用jdom生成百度新闻抓取的xml文件
- 用Java生成XML
- java生成xml文件的时候如何控制xml的缩进格式
- Java中将字符串转为日期
- JAVA生成唯一字符串
- Java 生成 XML 文档|JDOM
- java解析xml字符串
- java 中生成MD5的加密字符串方法
- 用Java生成XML