四、JDOM的使用方法
1、Document类
(1)Document的操作方法:
(2)从文件、流、系统ID、URL得到Document对象
(3)DOM的document和JDOM的Document之间的相互转换方法
2、XML文档输出
略。
3、Element类
(2)移动Elements:
(3)Element的text内容读取
或者
(4)Element内容修改
element.setText(""); //注意回车键也被解析成为Text类
4、Attribute类
5、处理指令的操作
此处没有看懂,暂且略
6、命名空间操作
7、XSLT格式转换
1、Document类
(1)Document的操作方法:
Element root = new Element("tree");
Document doc = new Document(root);
root.setText("Department");
(2)从文件、流、系统ID、URL得到Document对象
SAXBuilder builder = new SAXBuilder();
Document doc = bulider.build(url);
Element element = doc.getRootElement();
(3)DOM的document和JDOM的Document之间的相互转换方法
DOMBuilder builder = new DOMBuilder();
org.jdom.Document jdomDocument = builder.build(docDocument);
DomOutputter converter = new DomOutputter();
org.w3c.dom.Document domDocument = comverter.output(jdomDocument);
2、XML文档输出
略。
3、Element类
Element root = doc.getRootElement(); //获得根元素
List allChildren = root.getChildren(); //获得所有子元素的list
List namedChildren = root.getChildren("name"); //获得指定名称子元素的list
Element child = root.getChild("name"); //获得指定名称的第一个元素
allChildren.remove(3); //删除第4个元素,基数从0开始
allChildren.removeAll(root.getChildren("cs")); //删除叫cs的子元素
root.removeChildren("cs"); //删除叫cs的子元素
allChildren.add(new Element("cs")); //增加叫cs的子元素
root.addContent(new Element("cs")); //增加叫cs的子元素
allChildren.add(0, new Element("first")); //增加第一个节点,叫“first”
(2)移动Elements:
Element movable = new Element("movable");
parent1.addContent(movable);
parent1.removeContent(movable);
parent2.addContent(movable);
(3)Element的text内容读取
<description>
A cool Demo
</description>
String desc = element.getText();
或者
String desc = element.getTextTrim();
(4)Element内容修改
element.setText(""); //注意回车键也被解析成为Text类
4、Attribute类
<table width="100%" border="0"> </table>
String width = table.getAttributeValue("width"); //获得attrubute
int border = table.getAttribute("border").getIntValue();
table.setAttribute("vspace", "0"); //设置attribute
table.removeAttribute("vapace"); //删除一个attribute
table.getAttributes().clear(); //删除全部attribute
5、处理指令的操作
此处没有看懂,暂且略
6、命名空间操作
<xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml">
<xhtml:title>Home Page</xhtml:title>
</xhtml:html>
Namespace xhtml = Namespace.getNamespace("xhtml", "http://www.w3.org/1999/xhtml");
List kids = html.getChildren("title", xhtml);
Element kid = html.getChild("title", xhtml);
kid.addContent(new Element("table", xhtml));
7、XSLT格式转换
public static Document transform(String stylesheet,Document in)
throws JDOMException
{
try
{
Transformer transformer = TransformerFactory.newInstance()
.newTransformer(new StreamSource(stylesheet));
JDOMResult out = new JDOMResult();
transformer.transform(new JDOMSource(in), out);
return out.getDeocument();
}
catch (TransformerException e)
{
throw new JDOMException("XSLT Trandformation failed", e);
}
}