使用Excel导出XML格式文件

您所在的位置:网站首页 vba生成文件创建日期怎么写 使用Excel导出XML格式文件

使用Excel导出XML格式文件

2024-07-14 10:01:33| 来源: 网络整理| 查看: 265

生成XML的方式有很多:如果你是程序员,那么你可以通过变成快速生成你想要的XML格式;如果你是其他用户,你可能会使用记事本等文本编辑工具来手动写XML。这些都不是问题,但是数据量很大的时候,如果你不是程序猿会不会郁闷?本文介绍了一种方法不借助编程也可以高效、快速地生成XML配置文件。在看这篇文章之前,我先假定了你们都会用微软Office工具Excel,其实不会问题也不是很大:-D

假设现在有个任务,要生成一个班的学生XML配置,这个配置包含学生的学号、姓名、性别、年龄、出生年月信息,那么现在有两种XML格式可以选择:

1.把每个学生做成一个XML节点,相关信息描述到属性字段

2.把每个学生的相关信息分别做成一个单独XML节点

可以很容易发现第一种描述更简洁,看起来有点小清新的感觉,我们现在就以第一种格式来介绍生成XML的方法。不过你真的很喜欢第二种方式,看到最后你惊喜地发现,我的方法也可解决你的问题。

现在回归正题,如果用Excel去录入这些数据,大家很可能是这样来做数据,这样做很容易理解,并且容易批量拖拽处理。

 

到这里我们可以发现,其实Excel可以完全把我们的数据描述清楚,那么如果Excel能把这些数据转成XML岂不是很好?是的,Excel可以做这些,但是Excel不知道你想要的XML格式,所以要给Excel定一个规则让它直到我们想要什么字段、输出什么格式。现在有两种方法给Excel指定输出规则:简单XML映射、SchemaXML映射,下面分别来做介绍。

简单XML映射

对于上面的数据我们用下面这段XML来描述,然后保存为rule.xml文件。

简单XML映射规则

data是输出XML的根节点,student是单个学生信息节点,这两个字段限定了XML输出的节点名称,数据描述了单条XML节点属性的字段名称。这样整个输出规则就定制好了,是不是非常简单?可能会疑惑为什么有两条重复的student数据,这里我先不透露,大家可以看完这篇文章后自己试试看看什么效果。

接下来我们把这个XML规则导入Excel,进入“文件->选项->自定义功能区”,右边栏里面找到开发工具,确保其前面的复选框被勾上,并且确保XML前面的复选框也被勾上,如下图

然后返回主界面,在选项卡区域找到开发工具,点击源按钮,这时Excel会出现一个左边栏,这时导入XML规则的入口操作界面,

点击“XML 映射…->添加”,把之前保存的rule.xml文件导入进来,这时右边栏会出现一个树形的属性列表,列表字段就是rule.xml规则里面定义的字段,这些自动都是可以拖拽的:把id拖拽到学号栏,一次类推,把所有的字段都映射到Excel的数据栏。 

这样就完成了所有的规则定义以及映射工作,接下来就是高潮来临的时刻:输出XML配置。这一步非常简单,只需要点击一个按钮“开发者工具->导出”,然后选择你要输出的文件位置保存即可。

XML导出结果

整个操作是不是很简单?结果是不是很完美?!!细心的同学可能发现了出生日期导出的好像有点奇怪,其实不必诧异:这时Excel表示日期的原始数据。但是跟想象的结果好像有点出入,你是否想对输出的格式作进一步的限制?如果是,那么下一个章节是你需要关注的。

SchemaXML映射

其实我对Schema XML的了解也不太多,有一点我是可以确认的:SchemaXML是一个XML内容的规则,它描述了XML有什么样的内容,并限定了XML内容有什么格式;简单说它是一个XML的语法规范。为什么这样说呢?因为实际上我们为XML定义的没一个字段都是有其含义的,比如年龄字段只可能是一个整数,不可能是其他字符串之类的值;而出生日期就是一个日期格式,以此类推。这样你就会有点豁然开朗的感觉,是的,SchemaXML可以描述任意XML内容。到这里,我们可以用SchemaXML做Excel导出XML的规则就一点不奇怪了,应该说用它就最合适不过了!SchemaXML其实也是一个XML文件,但是写起来相对有点门槛。如果为上面的数据写一个SchemaXML规则,那么就应该类似下面这样

具体SchemaXML里面的这些字段表示什么意思,这就超出了本文介绍的范围,有兴趣的同学可以Google一些相关资料来学习一下。除了学习资料,也可以使用现成的可视化工具来生成配置,比如OxygenXML、LiquidXML等。下面是Oxygen可视化编辑工具的界面  这里就不对这些工具做过多的介绍,有兴趣的同学可以下来体验下。

把上面这段SchemaXML规则保存为rule.xsd文件,采用导入rule.xml的方式导入rule.xsd文件,导入后也会生成类似的树形字段列表,然后拖拽映射到相应的Excel数据列上,点击导出即可。

这是使用SchemaXML导出的配置结果,在日期字段里面月份、日期如果是一位数字的前面会自动补0占位,看起来非常工整。

每个字段单独输出XML节点

这中方式映射与字段输出属性模式是非常类似,区别只是规则定义格式的差别,如果使用简单XML做规则,那么就应该是这样

这里的规则与上面类似,也是重复两段student,这个是必须的,原理也同上面类似。

如果使用SchemaXML,那么规则应该这样

相应的Oxygen可视化模型大致如下图

注意事项 虽然XML、SchemaXML规则可以描述很复杂的XML内容,但是Excel只支持最多二级的XML配置导出使用XML做规则时,一定不能只使用一条数据来描述,否则生成的结果只有Excel标题栏文本,而不是数据本身


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭