此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
楼主【leadergg】截止到2008-07-11 09:06:51的历史汇总数据(不包括此帖):
发帖的总数量:2 发帖的总分数:110 每贴平均分数:55
回帖的总数量:8 得分贴总数量:0 回帖的得分率:0%
结贴的总数量:0 结贴的总分数:0
无满意结贴数:0 无满意结贴分:0
未结的帖子数:2 未结的总分数:110
结贴的百分比:0.00 % 结分的百分比:0.00 %
无满意结贴率:---------------------无满意结分率:---------------------
如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html
楼主【leadergg】截止到2008-07-11 09:06:51的历史汇总数据(不包括此帖):
发帖的总数量:2 发帖的总分数:110 每贴平均分数:55
回帖的总数量:8 得分贴总数量:0 回帖的得分率:0%
结贴的总数量:0 结贴的总分数:0
无满意结贴数:0 无满意结贴分:0
未结的帖子数:2 未结的总分数:110
结贴的百分比:0.00 % 结分的百分比:0.00 %
无满意结贴率:---------------------无满意结分率:---------------------
如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html
w3c的api不熟悉,实在不行,你就一个个的组装起来吧
private static void output ( Node node )
{
TransformerFactory transformerFactory = TransformerFactory.newInstance();
try{
Transformer transformer = transformerFactory.newTransformer();
transformer.setOutputProperty("encoding","gb2312");
transformer.setOutputProperty("indent","yes");
DOMSource domSource = new DOMSource();
domSource.setNode(node);
StreamResult result = new StreamResult();
result.setOutputStream(System.out);//在显示屏幕输出
// result.setOutputStream(new FileOutputStream("Test2.xml"));//文件格式输出
//6.转换
transformer.transform(domSource,result);
}catch(Exception ex)
{ }
}
谢谢seeSkyblue也谢谢上面两位。代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<action>
<name>dbm.table.get_table_info</name>
<display-name>取数据表信息</display-name>
<enable>1</enable>
<execute-order>0</execute-order>
<form>dbm.table</form>
<run if="true" else="tt">
<if-handles>
<handles>
<handle name="read-data">
<read-from type="TABLE">DBM_Table</read-from>
<read-if></read-if>
</handle>
<handle name="read-data">
<read-from type="TABLE">DBM_Table</read-from>
<read-if></read-if>
</handle>
</handles>
</if-handles>
<else-handles>
<handles>
<handle name="1111">
<read-from type="SSSS">TTTTT</read-from>
<read-if></read-if>
</handle>
</handles>
</else-handles>
</run>
</action>import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.Element;
import java.util.List;
import java.util.Iterator;
import java.io.*;
import org.dom4j.DocumentException;
import org.dom4j.io.SAXReader; public class Dom4jParse {public void gettt(Element el, String tagName) {
// 根没有用,所以不取。直接去取子节点
for (Iterator i = el.elementIterator(); i.hasNext();) {
Element element = (Element) i.next();
// 如果没有子节点,则直接读内容。
if (element.isTextOnly()) {
System.out.println(element.getName() + ":" + element.getText());
} else {
if (element.getName() == tagName) {
int ac = element.attributeCount();
// 输出节点属性值
for (int j = 0; j < ac; j++) {
System.out.println(element.attribute(j).getName()
.toString()
+ ":"
+ element.attribute(j).getText().toString());
}
}
if (element.getName() == "if-handles") {
System.out.println(element.getName()+" |||||||||||||||||||||||||");
}
if (element.getName() == "else-handles") {
System.out.println(element.getName()+" +++++++++++++++++++++++++");
}
// 取得handle节点并输出,否则就递归。
if (element.getName() == "handle") {
System.out.println(element.asXML());
} else {
gettt(element, "");
}
}
}
}
public void modifyDocument(File inputXml,String tagName) {
try {
SAXReader saxReader = new SAXReader();
Document document = saxReader.read(inputXml);
Element root = document.getRootElement();
gettt(root,tagName);
} catch (DocumentException e) {
System.out.println(e.getMessage());
} catch (IOException e) {
System.out.println(e.getMessage());
}
}
public static void main(String[] argv){
Dom4jParse dom4jParser=new Dom4jParse();
dom4jParser.modifyDocument(new File("test.xml"),"run");
}}输出结果如下:name:dbm.table.get_table_info
display-name:鍙栨暟鎹〃淇℃伅
enable:1
execute-order:0
form:dbm.table
if:true
else:tt
if-handles |||||||||||||||||||||||||
<handle name="read-data">
<read-from type="TABLE">DBM_Table</read-from>
<read-if/>
</handle>
<handle name="read-data">
<read-from type="TABLE">DBM_Table</read-from>
<read-if/>
</handle>
else-handles +++++++++++++++++++++++++
<handle name="1111">
<read-from type="SSSS">TTTTT</read-from>
<read-if/>
</handle>
不过出现了乱码,这个应该好解决。呵呵