已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Adobe ColdFusion读写Microsoft Office Excel数据 Adobe公司最新推出的ColdFusion9新增了很多令人兴奋地功能,这些功能具体体现在新出现的标签(Tag)上。比如,与微软Office文件的互操作性(CFSPREADSHEET),与其最新开发工具ColdFusion Builder的紧密集成,对象-关系映射(ORM),与微软Office SharePoint的集成(CFSHAREPOINT),ColdFusion作为服务,Adobe AIR本地/远程数据库同步,服务管理器以及对门户标准的嵌入支持等。笔者这几篇随笔简单介绍下ColdFusion9与Excel的交互操作。首先做一下准备工作,安装ColdFusion9和ColdFusion Builder, 添加ColdFusion Server并且配置好相关数据源。从CFBuilder中RDS Dateview观测自带的示例数据库可以验证连接正常。如图1.图 1 然后还需要一个示例Excel文件Sales.xls。不妨随意造些数据,如图2. 图 2接着新建ColdFusion Project,姑且命名为MyFirstCFPjt, 从项目中添加一个文件夹spreadsheet。从新建的spreadsheet中添加一个新的ColdFusion Page,由于要先做一个读取操作的Demo, 因此将其命名为read.cfm. 具体代码很简单,只需要将下面的写到新建的read.cfm中即可用内置的浏览器进行浏览操作了。view source print?1 2 6以上代码主要是将Sales.xls里的数据读取到一个query中。然后可以在程序其他地方应用这个query中的数据。cfdump标签用来将特定的ColdFusion对象的详细信息展示出来。在CFBuilder内置的IE浏览器中效果如图3.图 3自然,我们也可以以一种开发人员更加熟悉的方式使用查询结果,使用方法同普通的查询。将下面的代码添加到read.cfm中view source print?01 02 03 04ColdFusion9 Excel Read Demo 05 06 07Demo of retriving data from Excel files 08 09 10Sales detail 11 12 13 14#myQuery.COL_1# 15#myQuery.COL_2# 16#myQuery.COL_3# 17#myQuery.COL_4# 18#myQuery.COL_5# 19 20 21 22 23 2425在浏览器中浏览查看,效果如图4.图 4 要想获取某个特定单元格中的数据并将其放入特定变量,利用上面提到的查询方式很容易实现,但CF9提供了一种更加简便的方式,只需要设置cfspreadsheet标签的rows和columns属性即可。将下面代码放入read.cfm, 在浏览器中浏览。此时要注意设置format属性。view source print?01 02 10#myVar# 这样就可以像使用普通ColdFusion变量一样使用从Excel文件特定单元格中获取的数据了。上一篇随笔主要简单演示了数据读取操作,要想编辑Excel中数据的功能也很容易实现。代码几乎同读取操作一样,显著的不同是要将cfspreadsheet标签的action属性设置为write,设定所要编辑的单元格位置信息并且调用spreadsheetSetCellValue方法进行编辑。我们继续使用上一篇随笔中的那个示例Excel文件Sales.xls, 如图1.图 1注意这个文件第2行第2列的数字现在是“50000”。新建一个ColdFusion Page, 并将下面的代码添加进去。view source print?01 02 0506 07 0809 10 在浏览器中运行。然后再次打开Sales.xls文件。可以发现第2行第2列数据已经变成了“60000”。如图2.图 2前面的示例用了最简单的方式介绍了用ColdFusion编辑Excel文件的方式。为了使操作更加灵活方便,笔者再来演示一个稍微复杂的例子。首先新建一个ColdFusion Page, 与第一篇随笔对应,取名为write.cfm. 添加下面的代码用来新建一个cfform, 注意将form的action属性设置为#CGI.script_name#. view source print?01 02Set specific cell with specific value 03 04 05Region: 06 07Northeast 08East 09Central 10South 11Southwest 12West 13 14 15 16Quarter: 17 18Q1 19Q2 20Q3 21Q4 22 23 24 25Sales: $ 26 27 28 29 30在浏览器中运行一下,看到效果如图3, 其外观与普通html form没有什么区别。图 3接下来在页面顶部定义三个变量,分别用来表示要设置的单元格行,列,值信息。view source print?1 2 3 4最后添加前面讲过的读写方法,来实现对Excel文件的操作。view source print?01 02 05 06 09 10 11 12 16这样,就可以对特定的单元格的数据进行编辑了。在实际应用中,除了对已有Excel表单进行读写操作外,我们很有可能会需要将系统数据导出到Excel文件。导出Excel实质上是利用现有的数据新建一个Excel文件。ColdFusion9很容易实现这个功能。下面笔者将通过小示例来演示一下。首先新建一个ColdFusion Page, create.cfm. 将下面的代码添加进去。view source print?01 02 03SELECT * 04FROM ART 05 0607 08此处cfquery标签的datasource属性为安装ColdFusion9时自带的示例数据源,cfartgallery. 利用ColdFusion Builder的RDS Query Viewer可以对其中数据进行查看,先来看一下ART表中的数据,如图1. 图 1从代码中可以看出其功能是将ART表中的内容读入到arts查询中,然后写入到一个新的Excel文件Arts.xls. overwrite=”true”保证如果Excel表单不存在则创建,存在则覆盖。在浏览器中运行,可以看到当前目录下多了一个Excel文件,效果如图2. 图 2上面的示例仅仅是将数据库中的数据通过ColdFusion查询写入到一个新的Excel表单中。这是最原始的方法,其中并没有在意新建的Excel表单的美观程度,也没有我们很想要的汇总等等脚注信息,这可不是一个“制作精良”的表单。其实ColdFusion提供了好多方法可以更加灵活的对要写入Excel的数据进行处理,包括添加表单属性,设置格式,设置公式等等。为了演示这些功能,新建一个ColdFusion Page, decorate.cfm. 这里将再次用第一篇随笔中那个造出来的数据,如图3.图 3要完成这个Demo, 我们采用下面的步骤(有些步骤并不是必须的,当然这些也可以不是所有的步骤)。步骤1把数据读取到一个查询中备用。实现方法是将下面的代码添加到decorate.cfm. view source print?1 2步骤2利用spreadsheetNew方法新建一个表单对象:view source print?1 2步骤3为这个新建的表单添加一些属性信息:view source print?1 2 3 4 5 6步骤4为表单添加一个标题,并进行以下修饰以便使它能与内容区分出来:view source print?1 2 3步骤5将步骤1中获取的数据填入到新建的表单对象中:view source print?1 2 3步骤6定义一些变量以便以后使用。注意公式信息同Excel中语法是一致的:view source print?1 2 3 4 5 6 7 8步骤7设置汇总单元格,并应用步骤6中的公式计算:view source print?1 2 3 4 5 6步骤8对数值列进行修饰:view source print?1 2 3 4 5步骤9最后一步,将刚才新建的表单对象写入到Excel文件中:view source
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023年江西省直遴选笔试真题汇编及答案解析(夺冠)
- 2025年大数据智能分析系统研发可行性研究报告
- 2025年未来城市居住理念研究项目可行性研究报告
- 2023年荆州市直遴选笔试真题汇编含答案解析(夺冠)
- 2025云南昆明西山区长水教育集团招聘4人备考题库含答案解析(夺冠)
- 2025黑龙江大庆市工人文化宫招聘工作人员7人备考题库附答案解析
- 小微企业财务管理好用技巧与案例分析
- 2023年鄂州市直属机关遴选公务员笔试真题汇编附答案解析
- 2023年哈密地区直机关遴选公务员考试真题汇编附答案解析
- 2023年海口市遴选公务员考试真题汇编附答案解析(夺冠)
- 成都职业技术学院2025年四季度编制外公开(考试)招聘23名工作人员考试笔试参考题库及答案解析
- 辽宁省名校联盟2025年高三12月份联合考试英语试卷(含答案详解)
- 网络国家安全课件
- 2025新冠后中国旅游市场复苏现状发展趋势研究报告
- 2025哈萨克斯坦钢铁行业市场供需分析及投资评估规划分析研究报告
- 2025年12月六级试题及答案
- 医疗人工智能在疾病诊断与治疗中的应用
- 消防改造施工技术方案范本编写方案
- 装配工艺基础培训课件
- 2025四川成都广播影视集团有限责任公司招聘22人笔试参考题库附答案
- 新人教版初三数学期末试卷分析
评论
0/150
提交评论