package com.cms.action; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.io.Writer; import java.text.SimpleDateFormat; import java.util.Date; import javax.servlet.http.HttpSession; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerException; import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import org.apache.struts2.ServletActionContext; import org.w3c.dom.Document; import org.w3c.dom.Element; public class TestAction { public static int count=0; public String JanuaryNum="0"; //1 public String FebruaryNum="0"; //2 public String MarchNum="0"; //3 // public String AprilNum="0"; //4 // public String MayNum="0"; //5 // public String JuneNum="0"; //6 // public String JulyNum="0"; //7 // public String AugustNum="0"; //8 // public String SeptemberNum="0";//9 // public String OctoberNum="0"; //10 // public String NovemberNum="0";//11 // public String DecemberNum="0";//12 public String execute() throws Exception { System.out.println("ok..!!!!"+getNowMonth()); System.out.println("====>"+done()); intodata(); return null; } //得到当前月; public static String getNowMonth() { SimpleDateFormat formatter = new SimpleDateFormat("MM"); return formatter.format(new Date()); } //得到当前日期; public static String getDate() { SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMddHHmmss"); return formatter.format(new Date()); } public String path = ServletActionContext.getServletContext().getRealPath("/test/Count.xml"); //用XML存值标记; public String done (){ if (path != null && path.length() > 0) { File xmlfile = new File((new File("") + path)); DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = null; try { builder = factory.newDocumentBuilder(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } Document Doc = null; try { Doc = builder.parse(xmlfile); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } //String Driver = Doc.getElementsByTagName("total").item(0).getFirstChild().getNodeValue(); System.out.println("come in..."); //3月数据; if(getNowMonth().equals("03")){ String Driver = Doc.getElementsByTagName("ABO").item(0).getFirstChild().getNodeValue(); System.out.println("month03:->" + Driver); if(Driver!=null){ count=Integer.parseInt(Driver)+1; MarchNum=String.valueOf(count); //String message=Driver;//Integer.parseInt(Driver);// 得到XML中的值; //HttpSession session = ServletActionContext.getRequest().getSession(); //session.setAttribute("message", message); return MarchNum; } } } else { System.out.println("path error!! or path is null !!"); } return "error"; } //写值到XML public void intodata() throws IOException, TransformerException{ DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); DocumentBuilder bf; try { bf = dbf.newDocumentBuilder(); Document doc = bf.newDocument(); Element cat = doc.createElement("total"); //创建子目录;1~12 month; Element January = doc.createElement("January");//一月; Element Two=doc.createElement("two");//two Element ABO =doc.createElement("ABO5"); Element ACS =doc.createElement("ACS4"); Element ABO1 =doc.createElement("ABO1"); Element ACS1 =doc.createElement("ACS2"); // String n=String.valueOf((Integer.parseInt(name))); //创建子目录; doc.appendChild(cat);//total cat.appendChild(January);//1 cat.appendChild(Two); //一月子目录; January.appendChild(ABO1); January.appendChild(ACS1); Two.appendChild(ABO); Two.appendChild(ACS); //写入值到子目录下; ABO1.appendChild(doc.createTextNode(JanuaryNum));//1 ACS1.appendChild(doc.createTextNode(JanuaryNum)); ABO.appendChild(doc.createTextNode(JanuaryNum));//1 ACS.appendChild(doc.createTextNode(JanuaryNum)); TransformerFactory tff = TransformerFactory.newInstance(); Transformer tf = tff.newTransformer(); Writer out = new FileWriter(path); tf.transform(new DOMSource(doc), new StreamResult(out)); out.close(); } catch (ParserConfigurationException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
您还没有登录,请您登录后再发表评论
总的来说,你的类提供了一个方便的接口,使得在Java应用程序中操作XML文件变得更加简单。这种封装对于处理XML数据的项目来说是很有价值的,可以减少重复代码,提高代码质量,并有助于提升开发效率。
### Java 读取 XML 文件详解 #### 一、引言 在 Java 开发过程中,处理 XML 文件是一项常见的任务。XML(可扩展标记语言)是一种用于存储和传输数据的标准格式,被广泛应用于配置文件、数据交换等多种场景。Java ...
XStream是一个简单的Java库,用于把XML文档映射到Java对象上,同时也支持反向操作(即从Java对象生成XML)。XStream的使用非常简单,只需要通过`new XStream()`创建一个实例,然后调用相应的序列化与反序列化方法...
本篇将深入探讨Eclipse如何进行XML的读、写和更新操作,并通过源码分析来理解其背后的实现原理。 首先,Eclipse提供了内置的XML编辑器,它支持语法高亮、自动完成、错误检查等功能。在进行XML读取时,Eclipse使用了...
### JAVA读取、删除、修改XML文档 在Java中处理XML文档是一项常见需求,尤其是在集成系统、解析配置文件或处理Web服务时。本文将详细介绍如何使用Java来读取、...以上就是关于使用Java操作XML文件的基本知识点介绍。
我们将分析提供的文件,包括`XMLUtils.java`,这是实现XML操作的核心工具类,`CacheNodeVO.java`和`CacheNodeBaseVO.java`可能是定义数据模型的类,以及`Test.java`,这是一个测试类,用于验证XML处理功能。...
下面我们将深入探讨XML的读写方法,以及如何在实际案例中操作XML节点。 首先,XML文档由一系列元素构成,每个元素都有一个开始标签(如`<element>`)和结束标签(如`</element>`),元素可以包含文本、属性或其他...
DOM4j是一个灵活且功能强大的Java XML API,它提供了全面的XML处理解决方案,包括读取、写入、操作和转换XML文档。DOM4j的核心特性是基于DOM模型,但同时融入了SAX和DOM的优点,使其在处理大型XML文件时具有更好的...
XML文件以人类可读的文本形式定义了数据结构,其中包含元素、属性和值。 转换过程涉及到将JavaBean的实例属性映射到XML文件中的相应元素。例如,一个JavaBean的属性如"name",在XML文件中可能会表现为一个名为"name...
与DOM解析器相比,DOM4J占用更少的内存,且操作XML更快。此外,DOM4J的API设计直观,易于学习和使用,是Java开发人员处理XML的首选工具之一。 总的来说,DOM4J提供了一整套工具,使开发者能够高效地处理XML文档,...
**三、Java写入Excel(POI写操作)** 1. **创建工作簿**:首先创建一个空的工作簿。 ```java Workbook workbook = new XSSFWorkbook(); // 对于.xlsx格式,使用XSSFWorkbook // Workbook workbook = new ...
在Java开发中,处理Excel...总之,Apache POI是Java中处理Excel的强大工具,它使得读取、写入和操作Excel文件变得简单。确保正确引入所需jar包,并理解其核心API,你就可以自如地在Java项目中实现Excel文件的处理功能。
DOMJ4是Java中实现DOM Level 3规范的一个库,提供了更友好的API来操作XML文档。 要使用DOMJ4读取XML文件,我们首先需要添加DOMJ4的依赖到项目中。如果使用Maven,可以在pom.xml文件中添加如下依赖: ```xml ...
首先,Java本身并不内置对INI文件的支持,但我们可以借助第三方库如`ini4j`来实现对INI文件的操作。`ini4j`是一个小巧的Java库,它提供了一种方便的方式来处理INI文件,包括创建、读取和修改配置项。 1. **安装ini4...
1. **语法高亮**:firstobjct XML编辑器提供对XML语法的色彩突出显示,使得文档结构更加清晰易读,便于开发者快速定位和理解代码。 2. **自动完成与提示**:编辑器具备XML标签、属性和值的自动补全功能,减少手动...
然后,提到的"jaxb"技术,全称Java Architecture for XML Binding,是Java标准中用于XML到Java对象和Java对象到XML的绑定机制。虽然JAXB主要用于XML处理,但有一些工具,如XStream,可以扩展其功能来处理CSV和Excel...
5. **人类和机器可读**:XML的结构清晰,既方便人类阅读,也便于计算机解析。 ### XML的优势 1. **数据分离**:XML将数据和表现分离,使得数据可以独立于显示格式存在。 2. **标准化**:W3C为XML制定了严格的规范,...
8. **EL(Expression Language)**:EL是Java EE的一部分,用于在JSP页面中访问和操作Java对象。它可以用来获取或设置页面作用域、请求作用域等不同范围内的属性值。 9. **IDE(集成开发环境)**:如Eclipse、...
其次的考虑当然是XML,然而XML是基于可读文本的,如何解决二进制数据问题?当然可以通过编码的途径来解决,但是这样使用XML是不是太牵强了?而且,XML有个缺陷,数据都是文本型的。要使用数值型、布尔型、日期型的...
相关推荐
总的来说,你的类提供了一个方便的接口,使得在Java应用程序中操作XML文件变得更加简单。这种封装对于处理XML数据的项目来说是很有价值的,可以减少重复代码,提高代码质量,并有助于提升开发效率。
### Java 读取 XML 文件详解 #### 一、引言 在 Java 开发过程中,处理 XML 文件是一项常见的任务。XML(可扩展标记语言)是一种用于存储和传输数据的标准格式,被广泛应用于配置文件、数据交换等多种场景。Java ...
XStream是一个简单的Java库,用于把XML文档映射到Java对象上,同时也支持反向操作(即从Java对象生成XML)。XStream的使用非常简单,只需要通过`new XStream()`创建一个实例,然后调用相应的序列化与反序列化方法...
本篇将深入探讨Eclipse如何进行XML的读、写和更新操作,并通过源码分析来理解其背后的实现原理。 首先,Eclipse提供了内置的XML编辑器,它支持语法高亮、自动完成、错误检查等功能。在进行XML读取时,Eclipse使用了...
### JAVA读取、删除、修改XML文档 在Java中处理XML文档是一项常见需求,尤其是在集成系统、解析配置文件或处理Web服务时。本文将详细介绍如何使用Java来读取、...以上就是关于使用Java操作XML文件的基本知识点介绍。
我们将分析提供的文件,包括`XMLUtils.java`,这是实现XML操作的核心工具类,`CacheNodeVO.java`和`CacheNodeBaseVO.java`可能是定义数据模型的类,以及`Test.java`,这是一个测试类,用于验证XML处理功能。...
下面我们将深入探讨XML的读写方法,以及如何在实际案例中操作XML节点。 首先,XML文档由一系列元素构成,每个元素都有一个开始标签(如`<element>`)和结束标签(如`</element>`),元素可以包含文本、属性或其他...
DOM4j是一个灵活且功能强大的Java XML API,它提供了全面的XML处理解决方案,包括读取、写入、操作和转换XML文档。DOM4j的核心特性是基于DOM模型,但同时融入了SAX和DOM的优点,使其在处理大型XML文件时具有更好的...
XML文件以人类可读的文本形式定义了数据结构,其中包含元素、属性和值。 转换过程涉及到将JavaBean的实例属性映射到XML文件中的相应元素。例如,一个JavaBean的属性如"name",在XML文件中可能会表现为一个名为"name...
与DOM解析器相比,DOM4J占用更少的内存,且操作XML更快。此外,DOM4J的API设计直观,易于学习和使用,是Java开发人员处理XML的首选工具之一。 总的来说,DOM4J提供了一整套工具,使开发者能够高效地处理XML文档,...
**三、Java写入Excel(POI写操作)** 1. **创建工作簿**:首先创建一个空的工作簿。 ```java Workbook workbook = new XSSFWorkbook(); // 对于.xlsx格式,使用XSSFWorkbook // Workbook workbook = new ...
在Java开发中,处理Excel...总之,Apache POI是Java中处理Excel的强大工具,它使得读取、写入和操作Excel文件变得简单。确保正确引入所需jar包,并理解其核心API,你就可以自如地在Java项目中实现Excel文件的处理功能。
DOMJ4是Java中实现DOM Level 3规范的一个库,提供了更友好的API来操作XML文档。 要使用DOMJ4读取XML文件,我们首先需要添加DOMJ4的依赖到项目中。如果使用Maven,可以在pom.xml文件中添加如下依赖: ```xml ...
首先,Java本身并不内置对INI文件的支持,但我们可以借助第三方库如`ini4j`来实现对INI文件的操作。`ini4j`是一个小巧的Java库,它提供了一种方便的方式来处理INI文件,包括创建、读取和修改配置项。 1. **安装ini4...
1. **语法高亮**:firstobjct XML编辑器提供对XML语法的色彩突出显示,使得文档结构更加清晰易读,便于开发者快速定位和理解代码。 2. **自动完成与提示**:编辑器具备XML标签、属性和值的自动补全功能,减少手动...
然后,提到的"jaxb"技术,全称Java Architecture for XML Binding,是Java标准中用于XML到Java对象和Java对象到XML的绑定机制。虽然JAXB主要用于XML处理,但有一些工具,如XStream,可以扩展其功能来处理CSV和Excel...
5. **人类和机器可读**:XML的结构清晰,既方便人类阅读,也便于计算机解析。 ### XML的优势 1. **数据分离**:XML将数据和表现分离,使得数据可以独立于显示格式存在。 2. **标准化**:W3C为XML制定了严格的规范,...
8. **EL(Expression Language)**:EL是Java EE的一部分,用于在JSP页面中访问和操作Java对象。它可以用来获取或设置页面作用域、请求作用域等不同范围内的属性值。 9. **IDE(集成开发环境)**:如Eclipse、...
其次的考虑当然是XML,然而XML是基于可读文本的,如何解决二进制数据问题?当然可以通过编码的途径来解决,但是这样使用XML是不是太牵强了?而且,XML有个缺陷,数据都是文本型的。要使用数值型、布尔型、日期型的...