java对xml文件添加节点
例如:<?xmlversion="1.0"encoding="GB2312"?><ROOT><SYSTEM><SYSTEM_ID><![CDATA[test_wj]]><...
例如:<?xml version="1.0" encoding="GB2312"?>
<ROOT>
<SYSTEM>
<SYSTEM_ID><![CDATA[test_wj]]></SYSTEM_ID>
<CHECK_CODE><![CDATA[kHGb0+p@R7Hohn-MoMhy$roMMR*Wlo]]></CHECK_CODE>
<SYS_ORGAN_ID><![CDATA[51]]></SYS_ORGAN_ID>
</SYSTEM>
</ROOT>文件 我想通过一段代码把它变成
<?xml version="1.0" encoding="GB2312"?>
<ROOT>
<SYSTEM>
<SYSTEM_ID><![CDATA[test_wj]]></SYSTEM_ID>
<CHECK_CODE><![CDATA[kHGb0+p@R7Hohn-MoMhy$roMMR*Wlo]]></CHECK_CODE>
<SYS_ORGAN_ID><![CDATA[51]]></SYS_ORGAN_ID>
</SYSTEM>
<PARAM>
<TASKLIST>
<TASK>
<DATA_TRAN_ID><![CDATA[14595]]></DATA_TRAN_ID>
</TASK>
</TASKLIST>
</PARAM>
</ROOT>
qdmmy6 你基本上给出了答案 但是你能在给我补充一下吗?我想删除某个节点 或者在指定的节点下面加上某个节点还有就是你下面写的 我想 在一个子节点下面并列添加两个节点 怎么办 例如:添加成
<TASKLIST>
<TASK>
<DATA_TRAN_ID><![CDATA[14595]]></DATA_TRAN_ID>
<DATA_TRAN_ID_AAA>10002</DATA_TRAN_ID_AAA>
</TASK>
</TASKLIST>
给个小例子 我基本上就能看懂了 我在家30分
哥们 最后这个问题很麻烦 项目需求 用jdom不让用dom4j
您看能不能想下办法 展开
<ROOT>
<SYSTEM>
<SYSTEM_ID><![CDATA[test_wj]]></SYSTEM_ID>
<CHECK_CODE><![CDATA[kHGb0+p@R7Hohn-MoMhy$roMMR*Wlo]]></CHECK_CODE>
<SYS_ORGAN_ID><![CDATA[51]]></SYS_ORGAN_ID>
</SYSTEM>
</ROOT>文件 我想通过一段代码把它变成
<?xml version="1.0" encoding="GB2312"?>
<ROOT>
<SYSTEM>
<SYSTEM_ID><![CDATA[test_wj]]></SYSTEM_ID>
<CHECK_CODE><![CDATA[kHGb0+p@R7Hohn-MoMhy$roMMR*Wlo]]></CHECK_CODE>
<SYS_ORGAN_ID><![CDATA[51]]></SYS_ORGAN_ID>
</SYSTEM>
<PARAM>
<TASKLIST>
<TASK>
<DATA_TRAN_ID><![CDATA[14595]]></DATA_TRAN_ID>
</TASK>
</TASKLIST>
</PARAM>
</ROOT>
qdmmy6 你基本上给出了答案 但是你能在给我补充一下吗?我想删除某个节点 或者在指定的节点下面加上某个节点还有就是你下面写的 我想 在一个子节点下面并列添加两个节点 怎么办 例如:添加成
<TASKLIST>
<TASK>
<DATA_TRAN_ID><![CDATA[14595]]></DATA_TRAN_ID>
<DATA_TRAN_ID_AAA>10002</DATA_TRAN_ID_AAA>
</TASK>
</TASKLIST>
给个小例子 我基本上就能看懂了 我在家30分
哥们 最后这个问题很麻烦 项目需求 用jdom不让用dom4j
您看能不能想下办法 展开
3个回答
展开全部
/*
这里使用了dom4j组件,你需要自己去下载dom4j。
其中a.xml是你的源文件。
这个程序没有向磁盘中创建一个新文件,你可以自己修改代码。
例如:
XMLWriter xmlWriter = new XMLWriter(new PrintWriter(System.out), format);
可以修改为
XMLWriter xmlWriter = new XMLWriter(new FileWriter("a.xml"), format);
这样就可以修改源文件a.xml了。
*/
import org.dom4j.*;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
import org.dom4j.io.SAXReader;
import java.io.*;
public class Test {
public static void main(String[] args) {
SAXReader saxReader = new SAXReader();
try {
Document doc = saxReader.read(new File("a.xml"));
doc.getRootElement().addElement("PARAM")
.addElement("TASKLIST").addElement("TASK")
.addElement("DATA_TRAN_ID").addCDATA("14595");
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding("gb2312");
XMLWriter xmlWriter = new XMLWriter(new PrintWriter(System.out), format);
xmlWriter.write(doc);
xmlWriter.close();
} catch (DocumentException e) {
e.printStackTrace();
} catch(IOException e) {
e.printStackTrace();
}
}
}
这里使用了dom4j组件,你需要自己去下载dom4j。
其中a.xml是你的源文件。
这个程序没有向磁盘中创建一个新文件,你可以自己修改代码。
例如:
XMLWriter xmlWriter = new XMLWriter(new PrintWriter(System.out), format);
可以修改为
XMLWriter xmlWriter = new XMLWriter(new FileWriter("a.xml"), format);
这样就可以修改源文件a.xml了。
*/
import org.dom4j.*;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
import org.dom4j.io.SAXReader;
import java.io.*;
public class Test {
public static void main(String[] args) {
SAXReader saxReader = new SAXReader();
try {
Document doc = saxReader.read(new File("a.xml"));
doc.getRootElement().addElement("PARAM")
.addElement("TASKLIST").addElement("TASK")
.addElement("DATA_TRAN_ID").addCDATA("14595");
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding("gb2312");
XMLWriter xmlWriter = new XMLWriter(new PrintWriter(System.out), format);
xmlWriter.write(doc);
xmlWriter.close();
} catch (DocumentException e) {
e.printStackTrace();
} catch(IOException e) {
e.printStackTrace();
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
使用dom解析是可以做到的,需要用到的api有
javax.xml.parsers.DocumentBuilder
org.w3c.dom.Document
其他相关的去看下文档就行了
javax.xml.parsers.DocumentBuilder
org.w3c.dom.Document
其他相关的去看下文档就行了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
正在做,一会给你发过去,把你的QQ给我.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询