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();
}*/
}
分享到:
相关推荐
JAXB和DOM4J则提供了一种面向对象的方式来操作XML,更易于理解和使用。 在阅读了上述知识点后,你可以根据项目需求选择合适的方法,并结合提供的`ch03`文件进行实践操作。记住,理解并熟练掌握这些API的使用是提升...
js 操作xml 文件 读取xml文件 js 操作xml 文件 读取xml文件
总结,PowerBuilder 9为处理XML文件提供了强大的支持,通过XMLDocument对象和DOM解析器,我们可以轻松地读取、写入和操作XML数据。这些功能使PB9成为开发涉及XML的应用的理想工具,帮助开发者高效地完成数据交换和...
`XmlDocument` 提供了加载和操作XML文档的方法。以下是一个简单的读取示例: ```csharp using System.Xml; XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load("employees.xml"); // 加载XML文件 // ...
TinyXML-2(通常简称为tinyxml2)是一个轻量级的C++库,专门设计用来解析和操作XML文档。这个库小巧、简单且易于集成到项目中,尤其适合对性能要求不高的应用。 本项目“tinyxml2解析XML文件读取数据”主要关注如何...
这是两个流行的DOM解析库,提供了更友好的API来操作XML。它们允许直接修改XML元素和属性,例如添加、删除或修改节点。 7. **XML修改** 在读取XML文件后,可以通过DOM提供的API进行修改,如`Element`的`...
总之,MATLAB提供了强大且灵活的工具来处理XML文件,无论是简单的数据读取还是复杂的文件操作。通过熟练掌握这些函数和方法,你可以有效地在MATLAB项目中集成XML数据,实现与其他系统的无缝交互。在实际应用中,一定...
JDOM是Java中一个用于处理XML文档的库,它提供了一种高效且方便的方式来创建、读取、修改XML文件。本篇文章将深入探讨如何使用JDOM来读取XML文件。 首先,我们需要了解JDOM的基本概念。JDOM通过构建一棵DOM...
使用这个XML读取工具,开发者可以按照以下步骤操作: 1. 引入`tinyxml.h`头文件,创建`TiXmlDocument`对象,并加载XML文件。 2. 使用`LoadFile()`或`Parse()`方法加载XML数据。如果成功,可以通过`Error()`检查是否...
下面将详细讲解XML文件的操作方法,主要围绕读取和修改这两个核心主题。 一、XML文件的读取 1. DOM解析:DOM(Document Object Model)模型将XML文件解析为一个树形结构,允许开发者通过节点遍历和访问XML数据。在...
在处理XML文档时,LINQ to XML(也称为LinqXML)是一个非常实用的API,它提供了面向对象的方式来创建、操作和读取XML文档。本文将详细介绍如何使用C#的LinqXML技术对XML文件进行读取。 首先,我们需要引入必要的...
C# 操作 XML,读取 XML 到数据库和增删改 C# 语言可以轻松地操作 XML 文件,读取 XML 文件的内容并将其存储到数据库中。同时,C# 也可以对 XML 文件进行增删改操作。 读取 XML 文件 要读取 XML 文件,首先需要将 ...
XML(可扩展标记语言)是数据交换和存储的标准格式,因此掌握C#操作XML的技巧至关重要。本篇文章将详细介绍C#处理XML的三种方法,包括读取XML数据、对数据库进行操作以及修改XML节点。 首先,我们来探讨第一种方法...
在C#编程环境中,Windows Forms(Winform)应用程序经常需要处理XML文件,因为XML是一种结构...通过熟练掌握这些基本操作,可以实现更复杂的XML数据操作,比如搜索特定节点、修改节点值、序列化/反序列化对象到XML等。
xml教程(增删改)xml教程 xml xml操作教程 xml读取-程序员百味www.bywei.cnxml教程(增删改)xml教程 xml xml操作教程 xml读取-程序员百味www.bywei.cnxml教程(增删改)xml教程 xml xml操作教程 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的基本概念...
以下是一个简单的示例,展示如何在MFC对话框中使用TinyXml来读取和操作XML数据: 1. **加载XML文件**: 使用TinyXml的`TiXmlDocument`类加载XML文件。例如: ```cpp TiXmlDocument doc("StudentInfo.xml"); if ...
关于Delphi7读取保存XML 读取XML,修改节点,保存XML的一个完整实例。
本教程将深入探讨如何在C#中操作XML,包括读取和生成XML文档,并利用Web Service接口进行数据传输。 1. **C#操作XML:读取** 在C#中,我们可以使用`System.Xml`命名空间中的类来处理XML文档。其中,`XmlDocument`...