Java与XML

     目前有许多xml解析器,大多数解析器都是符合SAX和DOM之一的Java绑定。SAX可以读取文件并在遇到一些事件时调用代码,DOM可以读取文件并在内存中构造与文件中元素及其属性和内容对应的树或图。这种树可以遍历、搜索、修改或写到一个文件中。

     简单的“非验证型”解析器只检查XML语法是否正确,既是否格式规范。验证型解析器则可以检查XML是否遵循给定的DTD(文档类型定义)或XML模式(schema)。

     用XML处理器可以将其转换成其他格式,有两种方法进行转换:通用的XSLT处理器转换以及适用于XML定制操作的解析API。XSL则可以控制XML文档如何进行格式化、屏幕打印或者输出。从JDK 1.4开始,Java引入JAXP,是用于XML处理的Java API。

一、从Java对象中生成XML(XML对象串行化器)

        首先导入Java.beans.XMLDecoder和XMLEncoder包。

代码
1 public class SerialDemoXML entends SerialDemoAbstractBase{
2 public static final String FILENAME="serial.xml";
3 public static void main(String[] args)throws IOException{
4 new SerialDemoXML().save();
5 new SerialDemoXML().dump();
6 }
7
8 /*将文件保存在磁盘上*/
9 public void write(Object theGraph) throws IOExcrption{
10 XMLEncoder os=new XMLEncoder(
11 new BufferedOutputStream(
12 new FileOutputStream(FILENAME)));
13 os.writeObject(theGraph);
14 os.close();
15 }
16
17 /*显示数据*/
18 public void dump() throws IOException{
19 XMLDecoder inp=new XMLDecoder(
20 new BufferedInputStream(
21 new FileInputStream(FILENAME)));
22 System.out.println(inp.readObject());
23 inp.close();
24 }
25
二、使用XSLT转换XML

      具体的使用参考XSLT 的使用,这里只需要很少的Java代码

三、使用SAX解析XML

四、使用DOM解析XML

五、使用DTD验证结构

原文地址:https://www.cnblogs.com/ITEagle/p/1674864.html