1:DTD规范
dtd规范:规范xml格式,规定xml标签及属性名称。
JAVA源码:
//DTD规定
//id规定
]>
2:DomFactory解析
JAVA源码:
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse("books.xml");
NodeList list = doc.getElementsByTagName("book");
for(int i = 0 ;i
NodeList lists = list.item(i).getChildNodes();
//得到属性
Element ele = (Element) lists;
System.out.println(ele.getAttribute("id").toString());
for(int j = 0 ;j
//使用判断得到属性
if(lists.item(j).getNodeName().equals("name")){
//lists.item(j).setNodeValue("语文");
//lists.item(j).setTextContent("语文");
System.out.println("图书名字是:"+lists.item(j).getTextContent());
}
}
}
}
3:Dom4j解析
JAVA源码:
File file = new File("books.xml");
SAXReader saxReader = new SAXReader();
Document doc = saxReader.read(file);
Element ele1 = doc.getRootElement();
Iterator ite1 = ele1.elementIterator();
while(ite1.hasNext()){
Element ele2 = (Element)ite1.next();
Iterator ite2 = ele2.elementIterator();
System.out.println(ele2.attribute("id").getValue());
while(ite2.hasNext()){
Element ele3 = (Element)ite2.next();
if(ele3.getName().equals("name")){
System.out.println("图书名字是:"+ele3.getText());
}
}
}
}
4:xml文件修改
//保存文档(DomFactory读xml文件)
TransformerFactory tf = TransformerFactory.newInstance();
Transformer t = tf.newTransformer();
DOMSource ds = new DOMSource(doc);
//设置编码格式
t.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
StreamResult rs = new StreamResult(new FileOutputStream("books.xml"));
//转换成文档
t.transform(ds, rs);
附:xml文件内容,文件名称book.xml
//DTD规定
//id规定
]>
java基础
青哥
20.5
html基础
赵五
32.5
oracle基础
小陈
32.0
mysql基础
张三
15