惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
T
The Blog of Author Tim Ferriss
F
Fortinet All Blogs
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
阮一峰的网络日志
阮一峰的网络日志
The GitHub Blog
The GitHub Blog
Y
Y Combinator Blog
MyScale Blog
MyScale Blog
雷峰网
雷峰网
博客园 - 叶小钗
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
GbyAI
GbyAI
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园 - 三生石上(FineUI控件)
云风的 BLOG
云风的 BLOG
V
V2EX
宝玉的分享
宝玉的分享
酷 壳 – CoolShell
酷 壳 – CoolShell
N
Netflix TechBlog - Medium
Vercel News
Vercel News
美团技术团队
人人都是产品经理
人人都是产品经理
The Cloudflare Blog

博客园 - spoony

Flex4 Skinning 4: 留言板示例 Flex4 Skinning 2: 皮肤协议 Flex4 Skinning 1: 自定义一个简单按钮的皮肤 Air应用程序访问本地数据库 [通篇转载]调程序的小女孩 Adobe ColdFusion Reports(5) Adobe ColdFusion Reports(4) Adobe ColdFusion Reports(3) Adobe ColdFusion Reports(2) Adobe ColdFusion Reports(1) Adobe ColdFusion Charts(3) Adobe ColdFusion Charts(2) Adobe ColdFusion Charts(1) Adobe ColdFusion读写Microsoft Office Excel数据(3) Adobe ColdFusion读写Microsoft Office Excel数据(2) Flex与DotNET WebService交互(2) Flex与DotNET WebService交互(1) Ext JS Designer 1.0.5 发布 设置Flex Builder中FlashPlayer调试版本 - spoony - 博客园
Adobe ColdFusion读写Microsoft Office Excel数据(1)
spoony · 2010-01-22 · via 博客园 - spoony

  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中即可用内置的浏览器进行浏览操作了。 

<!--- Read as query --->
<cfspreadsheet
	action = "read"
	src = "Sales.xls"
	query = "myQuery">
<cfdump var = "#myQuery#">

  以上代码主要是将Sales.xls里的数据读取到一个query中。然后可以在程序其他地方应用这个query中的数据。cfdump标签用来将特定的ColdFusion对象的详细信息展示出来。

  在CFBuilder内置的IE浏览器中效果如图3. 

图 3

     自然,我们也可以以一种开发人员更加熟悉的方式使用查询结果,使用方法同普通的查询。将下面的代码添加到read.cfm中

<!--- Html content ---> <html> <head> <title>ColdFusion9 Excel Read Demo</title> </head> <body> <h2>Demo of retriving data from Excel files</h2> <table border=1> <tr colspan=5 border=0> <th>Sales detail</th> </tr> <cfoutput query="myQuery"> <tr> <td>#myQuery.COL_1#</td> <td>#myQuery.COL_2#</td> <td>#myQuery.COL_3#</td> <td>#myQuery.COL_4#</td> <td>#myQuery.COL_5#</td> </tr> </cfoutput> </table> </body> </html>

  在浏览器中浏览查看,效果如图4. 

图 4

       要想获取某个特定单元格中的数据并将其放入特定变量,利用上面提到的查询方式很容易实现,但CF9提供了一种更加简便的方式,只需要设置cfspreadsheet标签的rows和columns属性即可。将下面代码放入read.cfm, 在浏览器中浏览。此时要注意设置format属性。

<!--- Read specific cell to variable --->
<cfspreadsheet
	action = "read"
	format="csv"
	src = "Sales.xls"
	name = "myVar"
	sheet = "1"
	rows = "3-5"
	columns = "3">
<cfoutput>#myVar#</cfoutput>

       这样就可以像使用普通ColdFusion变量一样使用从Excel文件特定单元格中获取的数据了。