<%@ page contentType="text/html;charset=GBK" %>
<%@ page language="java" import="javax.xml.parsers.*"%>
<%@ page import="org.w3c.dom.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<%@ page import="javax.xml.transform.*" %>
<%@ page import="javax.xml.transform.dom.DOMSource" %>
<%@ page import="javax.xml.transform.stream.StreamResult" %>
<%!
NodeList links = null;
Document doc = null;
%>
<%
out.println("DOM实现对xml的节点添加<br>");
String name = "升龙拳";
String power = "99";
String level = "1";
String filename = "";
filename = getServletConfig().getServletContext().getRealPath ("9-08-4.xml");
//filename= "d:/9-08-4.xml";
try {
// 为解析XML文件创建DOM对象
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder=factory.newDocumentBuilder();
doc=builder.parse(new File(filename));
// 初始化
doc.normalize();
// 得到节点集合
links =doc.getElementsByTagName("action");
}catch(Exception e) {
out.println("访问XML文件出错!");
return;
}
// 下面构造一组新的节点
try{
Element root = doc.getDocumentElement();
Node node_list = doc.createElement("action");
Node node_name = (Node) doc.createElement("name");
Node tmp1 = doc.createTextNode("tmp1");
tmp1.setNodeValue( name );
node_name.appendChild(tmp1);
Node node_power = doc.createElement("power");
Node tmp2 = doc.createTextNode("tmp2");
tmp2.setNodeValue( power );
node_power.appendChild(tmp2);
Node node_level = doc.createElement("level");
Node tmp3 = doc.createTextNode("tmp3");
tmp3.setNodeValue( level );
node_level.appendChild(tmp3);
node_list.appendChild( node_name );
node_list.appendChild( node_power );
node_list.appendChild( node_level );
root.appendChild(node_list);
TransformerFactory tFactory =TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File( filename ).toURI().getPath());
//-----------------原来只有new file(filename)--------------------
transformer.transform(source, result);
out.println("<br><font color='red'>成功添加</font>");
}catch(Exception e){
out.print(e);
}
%>
<%@ page language="java" import="javax.xml.parsers.*"%>
<%@ page import="org.w3c.dom.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<%@ page import="javax.xml.transform.*" %>
<%@ page import="javax.xml.transform.dom.DOMSource" %>
<%@ page import="javax.xml.transform.stream.StreamResult" %>
<%!
NodeList links = null;
Document doc = null;
%>
<%
out.println("DOM实现对xml的节点添加<br>");
String name = "升龙拳";
String power = "99";
String level = "1";
String filename = "";
filename = getServletConfig().getServletContext().getRealPath ("9-08-4.xml");
//filename= "d:/9-08-4.xml";
try {
// 为解析XML文件创建DOM对象
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder=factory.newDocumentBuilder();
doc=builder.parse(new File(filename));
// 初始化
doc.normalize();
// 得到节点集合
links =doc.getElementsByTagName("action");
}catch(Exception e) {
out.println("访问XML文件出错!");
return;
}
// 下面构造一组新的节点
try{
Element root = doc.getDocumentElement();
Node node_list = doc.createElement("action");
Node node_name = (Node) doc.createElement("name");
Node tmp1 = doc.createTextNode("tmp1");
tmp1.setNodeValue( name );
node_name.appendChild(tmp1);
Node node_power = doc.createElement("power");
Node tmp2 = doc.createTextNode("tmp2");
tmp2.setNodeValue( power );
node_power.appendChild(tmp2);
Node node_level = doc.createElement("level");
Node tmp3 = doc.createTextNode("tmp3");
tmp3.setNodeValue( level );
node_level.appendChild(tmp3);
node_list.appendChild( node_name );
node_list.appendChild( node_power );
node_list.appendChild( node_level );
root.appendChild(node_list);
TransformerFactory tFactory =TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File( filename ).toURI().getPath());
//-----------------原来只有new file(filename)--------------------
transformer.transform(source, result);
out.println("<br><font color='red'>成功添加</font>");
}catch(Exception e){
out.print(e);
}
%>