一.下载jxl.jar(用来读取excel文件)和jdom(用来生成xml文件)
二.准备需要转换的数据,如图
三.代码部分
1.先写个类来处理如何生成xml
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import org.jdom.*;
import org.jdom.output.XMLOutputter;
public class GenEduXml {
Document myDoc;
Element myRoot;
Element subRoot;
public void init() throws IOException, JDOMException{
myDoc = new Document(); //创建document
Attribute att1 = new Attribute("grade","3");
Attribute att2 = new Attribute("version","高级");
ArrayList<Attribute> list = new ArrayList<Attribute>();
list.add(att1);
list.add(att2);
myRoot = new Element("subChannel").setAttribute("id","英语").
addContent(new Element("questions").setAttributes(list));
//此处注意用setAttribute设置属性时,属性个数大于1时参数为Collection类
myDoc.setRootElement(myRoot); //设置根节点
subRoot = myRoot.getChild("questions"); //移动到需要插入数据的节点
}
//写一个用来插入excel中一行数据的函数,注意如何形成所需结构
public void addOneItem(String question,String anwser,String option1,String option2,String option3){
subRoot.addContent(new Element("questionItem").setAttribute("answerid",anwser).
addContent(new Element("text").setText(question)).
addContent(new Element("answer").setAttribute("id","1").setText(option1)).
addContent(new Element("answer").setAttribute("id","2").setText(option2)).
addContent(new Element("answer").setAttribute("id","3").setText(option3)));
}
//将数据导出为xml文件的函数
public void toXml()throws IOException, JDOMException{
XMLOutputter XMLOut = new XMLOutputter();
XMLOut.output(myDoc, new FileOutputStream("test1.xml"));
}
}
2.写主函数类ExcelToXml,主函数中需要读取excel并调用GenEduXml
import java.io.File;
import jxl.*;
public class ExcelToXml {
public static void main(String args[]){
try{
Workbook workbook = Workbook.getWorkbook(new File("D:\\myfile.xls"));
Sheet sheet = workbook.getSheet(0); //获得第一个sheet
GenEduXml gen = new GenEduXml(); //创建生成xml文件的实例
gen.init();
Cell[] a = sheet.getColumn(0); //获得第一列
Cell[] b = sheet.getColumn(1);
Cell[] c = sheet.getColumn(2);
Cell[] d = sheet.getColumn(3);
Cell[] e = sheet.getColumn(4);
for(int i=0;i<a.length;i++){
gen.addOneItem(a[i].getContents(), b[i].getContents(), c[i].getContents(), d[i].getContents(), e[i].getContents());
}
workbook.close();
gen.toXml();
}catch(Exception e){
e.printStackTrace();
}
System.out.println("Xml has been biult!");
}
}
这样就可以形成所需的xml文件了
分享到:
相关推荐
标题 "用ruby读excel文件生成xml文件" 描述的是一项技术任务,即使用Ruby编程语言来处理Excel文件,并将其内容转换成XML格式。这在数据迁移、格式转换或与不支持Excel格式的应用程序进行数据交换时非常有用。Ruby库...
在IT行业中,Excel和XML是两种...以上就是关于Excel文件转换为XML文件的相关知识点,包括转换的原理、方法、注意事项以及一个具体的发票采集案例。掌握这些知识,可以帮助你更好地管理和整合数据资源,提高工作效率。
本文将详细介绍如何通过Excel读取数据并生成XML文件,以实现数据的标准化存储和传输。 首先,我们需要了解Excel如何读取数据。Excel提供了丰富的函数和公式,可以方便地对单元格中的数据进行操作。例如,VLOOKUP...
对于XML文件,Python内置了`xml.etree.ElementTree`模块,它提供了解析和生成XML文档的功能。对于Excel文件,我们可以使用pandas库,它支持读写Excel文件,并且在处理表格数据时非常强大。 1. **读取XML文件**: ...
本主题将详细探讨如何使用Java的Apache POI库读取Excel文件,并利用JDOM库生成XML文件。 首先,Apache POI是一个开源项目,专门用于处理Microsoft Office格式的文件,包括Excel(.xlsx和.xls)。在Java中,我们可以...
在IT行业中,将Excel数据转换为XML文件是一项常见的任务,特别是在数据交换、数据存储或集成不同系统时。这个过程涉及到对Excel数据的理解、解析以及将其结构化为XML格式。以下是一些关于如何实现这一目标的关键知识...
4. **生成XML文件**:有了数据后,我们可以使用.NET的`XmlWriter`类创建XML文件。首先,创建一个`XmlWriterSettings`对象,设置所需的XML属性,然后创建`XmlWriter`实例并写入数据: ```csharp using System.Xml; ...
2. **创建XML文档**:使用文本编辑器或专门的Open XML编辑器创建一个新的XML文件,按照RibbonXML的规范编写代码。例如,你可以定义一个名为"MyTab"的选项卡,包含一组"MyGroup",并在这个组里添加一个"MyButton"。 ...
这个项目提供了一种方法来实现这一目标,利用了jxl.jar库来处理Excel文件,以及XML相关的API来创建XML文件。以下是关于这个过程的详细知识点: 1. **Android读取Excel文件**: - Android本身并不支持直接读取Excel...
excel生成XML文件,税局申报数据经常是xml文件,会计用的是excl,怎么才能生成?
3. **XML 文件生成** - 使用 JDOM 创建 XML 结构。 - 将 Excel 数据映射到 XML 元素。 4. **异常处理** - 在整个过程中确保适当的错误处理机制。 5. **代码优化与扩展** - 针对复杂 Excel 文件的转换策略。 #...
本示例将探讨如何使用C#通过XML来创建Excel文件,这是一个高效且灵活的方法,尤其适用于处理大量数据时。XML(Extensible Markup Language)是一种结构化数据存储格式,可以方便地转换为Excel表格,便于数据分析和...
1. 首先,创建一个 ExportFileService 类,用于实现导出Excel文件和XML文件的功能。 2. 在 ExportFileService 类中,使用 JFileChooser 实现文件选择对话框,选择存放路径,填写文件名。 3. 使用 FileFilter 实现...
本文将深入探讨如何将Excel文件全方位解析并转换为XML数据,以及这样做的好处。 首先,我们来看Excel数据的读取。在编程中,读取Excel文件通常需要用到特定的库或工具,例如在Python中,我们可以使用pandas库的read...
本篇文章将详细讲解如何将XML文件导出为本地的Excel文件,这一过程涉及到数据解析、格式转换以及文件操作等多个关键知识点。 首先,我们需要了解XML的基本结构。XML文件由元素(Elements)、属性(Attributes)、...
3. **创建XML文档**:使用DOM(Document Object Model)、SAX(Simple API for XML)或XML流式API来构建XML树。DOM允许程序以树形结构操作XML,SAX是事件驱动的解析器,适用于大文件,而流式API则介于两者之间。 4....
3. **输出XML文件**:将构建好的XML文档写入到一个新的XML文件中。 ### 总结 通过以上步骤,我们可以实现Java读取Excel文件并转换为XML文件的功能。这不仅有助于数据格式的统一管理,还便于后续的数据分析和处理。...
- 使用Excel打开XML文件:可以将XML文件导入到工作表中,形成表格数据。 - VBA读取XML:通过`DocumentElement`或`CreateNode`方法创建XML DOM对象,然后使用`Load`或`LoadXML`方法加载XML文件。 - VBA修改XML:...
由于生成excel,所以没必要让用户选择xml文件,默认对指定文件夹下的所有的XML文件进行转换,并把转换得到的Excel放在指定文件夹。 运行时可以双击.py文件(看不到具体log); 或者按住shift同时鼠标右键,选择在此处...
1. **创建XML数据结构**:首先,我们需要构建一个XML文档,其结构应符合Excel的Open XML标准(.xlsx文件实际上是ZIP压缩包,包含多个XML文件)。例如,创建一个工作表的工作簿元素(`<workbook>`),工作表元素(`...