⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xmlfiletools.java

📁 电子邮件收发系统,采用各种技术进行研究开发适用大学生课程设计
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
    Document doc =null;

    TransformerFactory tFactory =null;
    Transformer transformer = null;
    DOMSource source =null;
    StreamResult result =null;

    try{
      factory = DocumentBuilderFactory.newInstance();
      builder = factory.newDocumentBuilder();
      doc = builder.parse(filePath);
      doc.normalize();

      NodeList roots =doc.getElementsByTagName("root");
      Element root=(Element)roots.item(0);

      NodeList links =doc.getElementsByTagName(nodeName);
      for (int i=(links.getLength()-1);i>=0;i--){
        Element link=(Element)links.item(i);
        NodeList names =link.getElementsByTagName(subNodeName);
        for (int j=0;j<names.getLength();j++){
          Element name=(Element)names.item(j);
          String nodeValue=name.getFirstChild().getNodeValue().trim();
          if(nodeValue.trim().toLowerCase().equals(subNodeValue.trim().toLowerCase())){
             root.removeChild(link);
             //break;
          }
        }
      }

      tFactory = TransformerFactory.newInstance();
      transformer = tFactory.newTransformer();
      source = new DOMSource(doc);
      result = new StreamResult(new java.io.File(filePath));
      transformer.transform(source, result);
    }
    catch(Exception e){
      LogManage.addLog("exception", DateFormat.formatDateYMDHMS(new java.util.Date())+" xmlFileManage5:"+e);
      logger.error(e.getMessage());
      reValue=2;    //error
    }
    finally{
      doc = null;
      builder = null;
      factory = null;
      result = null;
      source = null;
      transformer = null;
      tFactory = null;
    }
    return reValue;
  }

  //modify subnode
  public synchronized static int modifyNode(String filePath,String nodeName,String subNodeName,String subNodeValue,String newSubNodeValue) {
    int reValue=0;   //succesful
    DocumentBuilderFactory factory =null;
    DocumentBuilder builder =null;
    Document doc =null;

    TransformerFactory tFactory =null;
    Transformer transformer = null;
    DOMSource source =null;
    StreamResult result =null;

    try{
      factory = DocumentBuilderFactory.newInstance();
      builder = factory.newDocumentBuilder();
      doc = builder.parse(filePath);
      doc.normalize();

      NodeList links =doc.getElementsByTagName(nodeName);
      for (int i=0;i<links.getLength();i++){
        Element link=(Element)links.item(i);
        NodeList names =link.getElementsByTagName(subNodeName);
        for (int j=0;j<names.getLength();j++){
          Element name=(Element)names.item(j);
          String nodeValue=name.getFirstChild().getNodeValue().trim();
          if(nodeValue.trim().toLowerCase().equals(subNodeValue.trim().toLowerCase())){
             name.getFirstChild().setNodeValue(newSubNodeValue);
             break;
          }
        }
      }

      tFactory = TransformerFactory.newInstance();
      transformer = tFactory.newTransformer();
      source = new DOMSource(doc);
      result = new StreamResult(new java.io.File(filePath));
      transformer.transform(source, result);
    }
    catch(Exception e){
      LogManage.addLog("exception", DateFormat.formatDateYMDHMS(new java.util.Date())+" xmlFileManage6:"+e);
      logger.error(e.getMessage());
      reValue=2;    //error
    }
    finally{
      doc = null;
      builder = null;
      factory = null;
      result = null;
      source = null;
      transformer = null;
      tFactory = null;
    }
    return reValue;
  }

  //get node value
  public synchronized static String getNodeValue(String filePath,String nodeName,String subNodeName){
    String reValue="";
    try{
       DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
       DocumentBuilder builder=factory.newDocumentBuilder();
       Document doc=builder.parse(filePath);
       
       doc.normalize();

       NodeList nodeNames =doc.getElementsByTagName(nodeName);
       for (int i=0;i<nodeNames.getLength();i++){
         Element nodeNameElm = (Element) nodeNames.item(i);
         NodeList subNodeNames = nodeNameElm.getElementsByTagName(subNodeName);
         for (int j = 0; j < subNodeNames.getLength(); j++) {
           Element subNodeNameElm = (Element) subNodeNames.item(j);
           String strTmp = subNodeNameElm.getFirstChild().getNodeValue();
           if (reValue.equals(""))
             reValue = strTmp;
           else
             reValue += "*%*" + strTmp;
         }
       }

       doc=null;
       builder=null;
       factory=null;
    }
    catch(Exception e){
       LogManage.addLog("exception", DateFormat.formatDateYMDHMS(new java.util.Date())+" xmlFileManage7:"+e);
       logger.error("getNodeValue exception:"+e);
       return "";  //error
    }
    logger.debug(reValue);
    return reValue;
  }

  //check node whether already exists
  public synchronized static int isExists(String filePath,String nodeName,String subNodeName,String subNodeValue) {
    int reValue=-1;   //not exists
    DocumentBuilderFactory factory =null;
    DocumentBuilder builder =null;
    Document doc =null;
    try{
      factory = DocumentBuilderFactory.newInstance();
      builder = factory.newDocumentBuilder();
      doc = builder.parse(filePath);
      doc.normalize();

      NodeList links =doc.getElementsByTagName(nodeName);
      for (int i=0;i<links.getLength();i++){
        Element link=(Element)links.item(i);
        NodeList names =link.getElementsByTagName(subNodeName);
        for (int j=0;j<names.getLength();j++){
          Element name=(Element)names.item(j);
          String nodeValue=name.getFirstChild().getNodeValue().trim();
          if(nodeValue.trim().toLowerCase().equals(subNodeValue.trim().toLowerCase())){
             reValue=0;   //exists
             break;
          }
        }
      }

    }
    catch(Exception e){
      LogManage.addLog("exception", DateFormat.formatDateYMDHMS(new java.util.Date())+" xmlFileManage8:"+e);
      logger.error(e.getMessage());
      reValue=2;    //error
    }
    finally{
      doc = null;
      builder = null;
      factory = null;
    }
    return reValue;
  }

  //delete first value is key sub node,formate is 'domainName|admin1|admin2|....'
  public synchronized static int delFirstValueIsKeyNode(String filePath,String nodeName,String subNodeName,String subNodeValue) {
    int reValue=0;   //succesful
    DocumentBuilderFactory factory =null;
    DocumentBuilder builder =null;
    Document doc =null;

    TransformerFactory tFactory =null;
    Transformer transformer = null;
    DOMSource source =null;
    StreamResult result =null;

    try{
      factory = DocumentBuilderFactory.newInstance();
      builder = factory.newDocumentBuilder();
      doc = builder.parse(filePath);
      doc.normalize();

      NodeList links =doc.getElementsByTagName(nodeName);
      for (int i=0;i<links.getLength();i++){
        Element link=(Element)links.item(i);
        NodeList names =link.getElementsByTagName(subNodeName);
        for (int j=0;j<names.getLength();j++){
          Element name=(Element)names.item(j);
          String nodeValue=name.getFirstChild().getNodeValue().trim();
          nodeValue=CommUtil.getFirstValue(nodeValue,"|");
          if(nodeValue.trim().toLowerCase().equals(subNodeValue.trim().toLowerCase())){
             link.removeChild(name);
             break;
          }
        }
      }

      tFactory = TransformerFactory.newInstance();
      transformer = tFactory.newTransformer();
      source = new DOMSource(doc);
      result = new StreamResult(new java.io.File(filePath));
      transformer.transform(source, result);
    }
    catch(Exception e){
      LogManage.addLog("exception", DateFormat.formatDateYMDHMS(new java.util.Date())+" xmlFileManage9:"+e);
      logger.error(e.getMessage());
      reValue=2;    //error
    }
    finally{
      doc = null;
      builder = null;
      factory = null;
      result = null;
      source = null;
      transformer = null;
      tFactory = null;
    }
    return reValue;
  }

*/
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -