document 生成xml時 報錯 XML-20100: (Fatal Error) Expected ';'. 查了半天發現是 特殊字符 & 不能直接轉出,需要進行轉換,
因為是通用方法很多地方使用了生成方法,在賦值的時候修改太麻煩,只好想辦法修改公用方法。循環document下的所有節點進行替換操作
代碼如下:
Element root = document.getRootElement();// 獲取根節點 editNodes(root);//替換特殊字符& /** * 替換特殊字符& * @param node */ public void editNodes(Element node) { // 當前節點的名稱、文本內容和屬性 // System.out.println("-------開始新節點-------------"); // System.out.println("當前節點名稱:" + node.getName());// 當前節點名稱 // System.out.println("當前節點的內容:" + node.getTextTrim());// 當前節點內容 if(null!=node.getTextTrim() && !node.getTextTrim().equals("") && null!=node.getName() && !node.getName().equals("") ) { node.setText(node.getTextTrim().replaceAll("&", "&"));//替換特殊字符 }// 遞歸遍歷當前節點所有的子節點 List<Element> listElement = node.elements();// 所有一級子節點的list for ( Element e : listElement) {// 遍歷所有一級子節點 editNodes(e);// 遞歸 } }
本博客是本人原創 未經允許不得轉載 謝謝。
鏈接地址:http://www.cnblogs.com/richard-ju/p/L2018008.html