fi = new FileInputStream(path);
SAXBuilder sb = new SAXBuilder();
Document doc = sb.build(fi);
Element root = doc.getRootElement(); // 得到根元素
List books = root.getChildren(); // 得到根元素所有子元素的集合
Element book = (Element) books.get(xmlid);
String bookname = request.getParameter("bookname");
String author = request.getParameter("author");
String price = request.getParameter("price");
String pub = request.getParameter("pub");
String pubdate = request.getParameter("pubdate");
// Text newtext;
Element newname = book.getChild("书名");
newname.setText(bookname);// 修改书名为新的书名
Element newauthor = book.getChild("作者");
newauthor.setText(author);
Element newpub = book.getChild("出版社");
newpub.setText(pub);
Element newprice = book.getChild("价格");
newprice.setText(price);
Element newdate = book.getChild("出版日期");
newdate.setText(pubdate);
// books.set(xmlid,book);//修改子元素
// String indent = " ";
// boolean newLines = true;
// XMLOutputter outp = new XMLOutputter(indent, newLines, "GBK");
Format format = Format.getPrettyFormat();
format.setIndent(" ");
format.setEncoding("utf-8");
XMLOutputter outp = new XMLOutputter(format);
fo = new FileOutputStream(path);
outp.output(doc, fo);
} catch (Exception e) {
System.err.println(e "error");
} finally {
try {
fi.close();
fo.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
下面是操作的JSP文件: test.jsp
<%@ page contentType="text/html;charset=GBK"%>
<%@ page language="java" import="java.util.*,jdom.test.*"%>
<html>
<head>
<title>读取XML文件资料</title>
</head>
<body>
<h3 align="center">JDOM操作XML文件</h3>
<p align="center">读取XML文件中的所有资料</p>
<center>
<table border="1" cellpadding="0" cellspacing="1"
style="border-collapse: collapse" width="80%" id="AutoNumber1">
<tr>
<td align="center" width="92">书名</td>
<td align="center" width="92">作者</td>
<td align="center" width="92">出版社</td>
<td align="center" width="92">价格</td>
<td align="center" width="92">出版日期</td>
<td align="center" width="94">操作</td>
</tr>
</table>
<%
String path = application.getRealPath("/JDOM/MyXml.xml");
XmlBean xml = new XmlBean();
Vector xmlall = xml.LoadXML(path);
for (int i = 0; i < xmlall.size(); i ) {
xml = (XmlBean) xmlall.elementAt(i);
/**out.println("书名:" xml.getbookname() "<br>");
out.println("作者:" xml.getauthor() "<br>");
out.println("出版社:" xml.getpub() "<br>");
out.println("价格:" xml.getprice() "<br>");
out.println("出版日期:" xml.getpubdate() "<br><br>");
*/
%>
<table border="1" cellpadding="0" cellspacing="1"
style="border-collapse: collapse" width="80%" id="AutoNumber2">
<tr>
<td align="center" width="92"><%=xml.getbookname()%></td>
<td align="center" width="92"><%=xml.getauthor()%></td>
<td align="center" width="92"><%=xml.getpub()%></td>
<td align="center" width="92"><%=xml.getprice()%></td>
<td align="center" width="92"><%=xml.getpubdate()%></td>
<td align="center" width="94"><a
href="xmlaction.jsp?act=del&id=<%=i%>&path=<%=path%>">删除</a></td>
</tr>
</table>
<%}%></center>
<form method="POST" action="xmlaction.jsp">
<p align="center"><input type="radio" value="add" checked name="act">添加资料
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




