|
/** * 修改XML文件指定信息 */ public static void EditXML(HttpServletRequest request) throws Exception { FileInputStream fi = null; FileOutputStream fo = null; try { request.setCharacterEncoding("GBK"); String path = request.getParameter("path"); int xmlid = Integer.parseInt(request.getParameter("id")); 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>"); */
上一页 [1] [2] [3] [4] 下一页 |