package s0210xml文件的读取和创建; |
import java.io.File; |
import javax.xml.parsers.DocumentBuilder; |
import javax.xml.parsers.DocumentBuilderFactory; |
import javax.xml.parsers.ParserConfigurationException; |
import javax.xml.transform.Transformer; |
import javax.xml.transform.TransformerConfigurationException; |
import javax.xml.transform.TransformerException; |
import javax.xml.transform.TransformerFactory; |
import javax.xml.transform.dom.DOMSource; |
import javax.xml.transform.stream.StreamResult; |
import org.w3c.dom.Document; |
import org.w3c.dom.Element; |
public class CreatXML { |
public static void main(String[] args) { |
try { |
|
|
//这几行代码基本是固定的 |
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); |
DocumentBuilder builder = factory.newDocumentBuilder(); //通过工厂类创建一个builder |
Document document = builder.newDocument(); //用builder创建一个文件 |
//这几行代码基本是固定的 |
|
Element root = document.createElement( "Languages" ); //创建元素节点 |
root.setAttribute( "cat" , "itt" ); //设置属性(属性名,属性值) |
|
//创建子节点lan1 |
Element lan1 = document.createElement( "lan" ); |
lan1.setAttribute( "id" , "1" ); |
Element name1 = document.createElement( "name" ); |
name1.setTextContent( "Java" ); |
Element ide1 = document.createElement( "ide" ); |
ide1.setTextContent( "Eclipse" ); //setTextContent设置标签中间的文本内容 |
lan1.appendChild(name1); //添加子节点 |
lan1.appendChild(ide1); //添加子节点 |
//创建子节点lan1 |
|
//创建子节点lan1 |
Element lan2 = document.createElement( "lan" ); |
lan2.setAttribute( "id" , "2" ); |
Element name2 = document.createElement( "name" ); |
name2.setTextContent( "Swift" ); |
Element ide2 = document.createElement( "ide" ); |
ide2.setTextContent( "XCode" ); |
lan2.appendChild(name2); |
lan2.appendChild(ide2); |
//创建子节点lan1 |
|
//创建子节点lan1 |
Element lan3 = document.createElement( "lan" ); |
lan3.setAttribute( "id" , "3" ); |
Element name3 = document.createElement( "name" ); |
name3.setTextContent( "C#" ); |
Element ide3 = document.createElement( "ide" ); |
ide3.setTextContent( "Visual Studio" ); |
lan3.appendChild(name3); |
lan3.appendChild(ide3); |
//创建子节点lan1 |
|
//根节点添加子节点 |
root.appendChild(lan1); |
root.appendChild(lan2); |
root.appendChild(lan3); |
document.appendChild(root); //很重要,要将根节点添加到document中 |
//根节点添加子节点 |
|
//这里是固定格式 |
TransformerFactory transformerFactory = TransformerFactory.newInstance(); |
Transformer transformer = transformerFactory.newTransformer(); //作用,将xml文档转换为其他格式 |
transformer.setOutputProperty( "encoding" , "UTF-8" ); |
//这里是固定格式 |
|
|
//将xml文件保存为文件 |
//new StreamResult(new File("newxml.xml")转换为文件,在工程目录中刷新,就会显示xml文件,然后按ctrl+i对xml文档格式化 |
transformer.transform( new DOMSource(document), new StreamResult( new File( "src/s0210xml文件的读取和创建/newxml.xml" ))); |
//将xml文件保存为文件 |
|
} catch (ParserConfigurationException e) { |
e.printStackTrace(); |
} catch (TransformerConfigurationException e) { |
e.printStackTrace(); |
} catch (TransformerException e) { |
e.printStackTrace(); |
} |
} |
} |
初级程序员
by: 云代码会员 发表于:2016-06-09 23:08:07 顶(0) | 踩(0) 回复
我要积分啊!
回复评论