`
eagletony
  • 浏览: 41985 次
  • 来自: ...
社区版块
存档分类
最新评论

修改xml及重新读取

阅读更多

package com.sinoufc.nms.alarm.util;

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.net.URISyntaxException;
import java.util.Iterator;
import java.util.List;

import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;



public class AnalysisAlarmPlot {
	private final String path = this.getClass().getResource("/").getPath()+ "alarm_plot.xml";
	//private static String strFileName="alarm_plot.xml";
	
	// protected static HttpServletRequest httpServletRequest;
	 
	public  String analysisXML(){
		
		String refreshRate = null;
		  try
		  {
		 // String filePath = Thread.currentThread().getContextClassLoader().getResource("").toURI().getPath()+"com/sinoufc/nms/alarm/util/";
		
		 
			 File 	xmlFile=new File(path);      // Assgin XML File
		   SAXReader reader=new SAXReader();    //Connstructor SAXReader Object 
		   Document xmlDoc=reader.read(xmlFile);    // Read xml stream
		   Element root=xmlDoc.getRootElement();    //Get the root node  of XML File
		   List    listRowSet=xmlDoc.selectNodes("//refreshrate");   //Get the rowset
		   for(Iterator i=listRowSet.iterator();i.hasNext();){
		    Element ele=(Element)i.next();
		    refreshRate = ele.attribute("rate").getValue();
		    System.out.println(ele.attribute("rate").getValue());
		   }
		    
		  }catch(Exception e){
		   System.out.print(e.getMessage());
		  }
		return refreshRate;
	}
	
	public  void updateXML(String refRate){
		  try
		  {
		//  String filePath = Thread.currentThread().getContextClassLoader().getResource("").toURI().getPath()+"com/sinoufc/nms/alarm/util/";
		   
		  File xmlFile=new File(path);      // Assgin XML File
		   SAXReader reader=new SAXReader();    //Connstructor SAXReader Object 
		   Document xmlDoc=reader.read(xmlFile);    // Read xml stream
		   Element root=xmlDoc.getRootElement();    //Get the root node  of XML File
		   List    listRowSet=xmlDoc.selectNodes("//refreshrate");   //Get the rowset
		   for(Iterator i=listRowSet.iterator();i.hasNext();){
		    Element ele=(Element)i.next();
		    	Attribute a=ele.attribute("rate");
		    	ele.remove(a);
                ele.addAttribute("rate",refRate);
		   }
		   
		   XMLWriter output;
           OutputFormat format = OutputFormat.createPrettyPrint();
           try {
               output = new XMLWriter(new FileWriter(path), format);
               output.write(xmlDoc);
               output.close();
              
           } catch (IOException e) {
               e.printStackTrace();
           }
		  }catch(Exception e){
		   System.out.print(e.getMessage());
		  }
	}
	
	public  void changeAlarmLisenerState(String state){
		try{
		// String filePath = Thread.currentThread().getContextClassLoader().getResource("").toURI().getPath()+"com/sinoufc/nms/alarm/util/";
		  
		   File xmlFile=new File(path);      // Assgin XML File
		   SAXReader reader=new SAXReader();    //Connstructor SAXReader Object 
		   Document xmlDoc=reader.read(xmlFile);    // Read xml stream
		   Element root=xmlDoc.getRootElement();    //Get the root node  of XML File
		   List    listRowSet=xmlDoc.selectNodes("//alarmlisener");   //Get the rowset
		   for(Iterator i=listRowSet.iterator();i.hasNext();){
			    Element ele=(Element)i.next();
			    	Attribute a=ele.attribute("state");
			    	ele.remove(a);
	                ele.addAttribute("state",state);
			   }
			   
			   XMLWriter output;
	           OutputFormat format = OutputFormat.createPrettyPrint();
	           try {
	               output = new XMLWriter(new FileWriter(path), format);
	               output.write(xmlDoc);
	             
	               output.close();
	              
	           } catch (IOException e) {
	               e.printStackTrace();
	           }
		}catch(Exception e){
			e.printStackTrace();
		}
	}
	
	public  String getAlarmLisenerState(){
		String state = null;
		  try
		  {
		 // String filePath = Thread.currentThread().getContextClassLoader().getResource("").toURI().getPath()+"com/sinoufc/nms/alarm/util/";
		   System.out.println(path);
			  
		   File xmlFile=new File(path);      // Assgin XML File
		   SAXReader reader=new SAXReader();    //Connstructor SAXReader Object 
		   Document xmlDoc=null;
		   xmlDoc = reader.read(xmlFile);    // Read xml stream
		   Element root=xmlDoc.getRootElement();    //Get the root node  of XML File
		   List    listRowSet=xmlDoc.selectNodes("//alarmlisener");   //Get the rowset
		   for(Iterator i=listRowSet.iterator();i.hasNext();){
		    Element ele=(Element)i.next();
		    state = ele.attribute("state").getValue();
		    System.out.println(ele.attribute("state").getValue());
		   }
		    
		  }catch(Exception e){
		   System.out.print(e.getMessage());
		  }
		return state;
	}
	
/*	 public static void main(String [] args) throws URISyntaxException{
		 String filePath = Thread.currentThread().getContextClassLoader().getResource("").toURI().getPath()+"";
		 System.out.println("path:"+filePath+"com/sinoufc/nms/alarm/util/");
		
		updateXML();
		analysisXML();
	 }*/
}
 
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    用java读取修改xml文件的代码实现

    JAXB和DOM4J则提供了一种面向对象的方式来操作XML,更易于理解和使用。 在阅读了上述知识点后,你可以根据项目需求选择合适的方法,并结合提供的`ch03`文件进行实践操作。记住,理解并熟练掌握这些API的使用是提升...

    js 操作xml 文件 读取xml文件

    js 操作xml 文件 读取xml文件 js 操作xml 文件 读取xml文件

    pb下读写xml文件的例子.rar_pb_pb 读取xml_pb 读取xml文件_pb9 xml_pb下读写xml文件的例子

    总结,PowerBuilder 9为处理XML文件提供了强大的支持,通过XMLDocument对象和DOM解析器,我们可以轻松地读取、写入和操作XML数据。这些功能使PB9成为开发涉及XML的应用的理想工具,帮助开发者高效地完成数据交换和...

    C# XML文件读取示例

    `XmlDocument` 提供了加载和操作XML文档的方法。以下是一个简单的读取示例: ```csharp using System.Xml; XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load("employees.xml"); // 加载XML文件 // ...

    tinyxml2解析XML文件读取数据

    TinyXML-2(通常简称为tinyxml2)是一个轻量级的C++库,专门设计用来解析和操作XML文档。这个库小巧、简单且易于集成到项目中,尤其适合对性能要求不高的应用。 本项目“tinyxml2解析XML文件读取数据”主要关注如何...

    读取和修改xml文件

    这是两个流行的DOM解析库,提供了更友好的API来操作XML。它们允许直接修改XML元素和属性,例如添加、删除或修改节点。 7. **XML修改** 在读取XML文件后,可以通过DOM提供的API进行修改,如`Element`的`...

    xml.zip_matlab读取xml文件实例_xml文件读取

    总之,MATLAB提供了强大且灵活的工具来处理XML文件,无论是简单的数据读取还是复杂的文件操作。通过熟练掌握这些函数和方法,你可以有效地在MATLAB项目中集成XML数据,实现与其他系统的无缝交互。在实际应用中,一定...

    jdom 读取XML 文件

    JDOM是Java中一个用于处理XML文档的库,它提供了一种高效且方便的方式来创建、读取、修改XML文件。本篇文章将深入探讨如何使用JDOM来读取XML文件。 首先,我们需要了解JDOM的基本概念。JDOM通过构建一棵DOM...

    xml读取工具,用于MFC的XML文件的读取

    使用这个XML读取工具,开发者可以按照以下步骤操作: 1. 引入`tinyxml.h`头文件,创建`TiXmlDocument`对象,并加载XML文件。 2. 使用`LoadFile()`或`Parse()`方法加载XML数据。如果成功,可以通过`Error()`检查是否...

    xml 文件操作(读取和修改)

    下面将详细讲解XML文件的操作方法,主要围绕读取和修改这两个核心主题。 一、XML文件的读取 1. DOM解析:DOM(Document Object Model)模型将XML文件解析为一个树形结构,允许开发者通过节点遍历和访问XML数据。在...

    C# LinqXML使用LINQ技术对XML文件进行读取

    在处理XML文档时,LINQ to XML(也称为LinqXML)是一个非常实用的API,它提供了面向对象的方式来创建、操作和读取XML文档。本文将详细介绍如何使用C#的LinqXML技术对XML文件进行读取。 首先,我们需要引入必要的...

    C#操作XML,读取XML到数据库和增删改

    C# 操作 XML,读取 XML 到数据库和增删改 C# 语言可以轻松地操作 XML 文件,读取 XML 文件的内容并将其存储到数据库中。同时,C# 也可以对 XML 文件进行增删改操作。 读取 XML 文件 要读取 XML 文件,首先需要将 ...

    C#操作XMl 三种方法 包括对读取入库

    XML(可扩展标记语言)是数据交换和存储的标准格式,因此掌握C#操作XML的技巧至关重要。本篇文章将详细介绍C#处理XML的三种方法,包括读取XML数据、对数据库进行操作以及修改XML节点。 首先,我们来探讨第一种方法...

    C# winform xml文件读取

    在C#编程环境中,Windows Forms(Winform)应用程序经常需要处理XML文件,因为XML是一种结构...通过熟练掌握这些基本操作,可以实现更复杂的XML数据操作,比如搜索特定节点、修改节点值、序列化/反序列化对象到XML等。

    xml教程(增删改)xml教程 xml xml操作教程 xml读取-程序员百味www.bywei.cn

    xml教程(增删改)xml教程 xml xml操作教程 xml读取-程序员百味www.bywei.cnxml教程(增删改)xml教程 xml xml操作教程 xml读取-程序员百味www.bywei.cnxml教程(增删改)xml教程 xml xml操作教程 xml读取-程序员百...

    C# 创建读取修改xml

    对于更简洁的LINQ to XML API,可以使用`XDocument`来操作XML: ```csharp using System.Xml.Linq; // 使用XDocument读取XML void ReadXmlWithLinq() { XDocument doc = XDocument.Load("data.xml"); var items ...

    RapidXml读取并修改XML文件

    这个压缩包中的"RapidXml读取并修改XML文件"主题,显然涉及到如何利用RapidXml库进行XML文件的读取和修改操作,并且已经封装成了一个单独的类,以便于在实际项目中直接使用。 首先,我们需要了解RapidXml的基本概念...

    mfc 利用TinyXml 读取数据操作

    以下是一个简单的示例,展示如何在MFC对话框中使用TinyXml来读取和操作XML数据: 1. **加载XML文件**: 使用TinyXml的`TiXmlDocument`类加载XML文件。例如: ```cpp TiXmlDocument doc("StudentInfo.xml"); if ...

    关于Delphi7读取保存XML

    关于Delphi7读取保存XML 读取XML,修改节点,保存XML的一个完整实例。

    c#操作XML 读取、生成,WEBSERVICE接口

    本教程将深入探讨如何在C#中操作XML,包括读取和生成XML文档,并利用Web Service接口进行数据传输。 1. **C#操作XML:读取** 在C#中,我们可以使用`System.Xml`命名空间中的类来处理XML文档。其中,`XmlDocument`...

Global site tag (gtag.js) - Google Analytics