选择显示字体大小

用coldfusion生成 office 文件

  这几天在经典、5d碰到很多人在问,如何用cf生成excel文件,昨天夜晚就写了一个示范程序放上来供大家参考。

  我建议大家先自己慢慢体会,程序本身并不复杂,如果看不懂的再来问,最好不要看都没看就来发问...

  好的,我就用我ccf论坛的数据库来做是实验,目的是在线打开excel文件和在线生成excel文件。文件内容就是ccf论坛所有版块的名称和编号。我顺便做了个生成word文件的.代码就改了一处.大家仔细看看.
  在线打开office文件必须你系统安装了office。记住这点,要不然就会提示下载。

<!---application.cfm文件代码--->

<cfapplication name="cftooffice"
sessionmanagement="yes">

<cfset request.dsn="ccf"><!---数据库dsn--->

<!------index.cfm文件代码------->

<!doctype html public "-//w3c//dtd html 4.01 transitional//en">

<cfquery name="viewlist" datasource="#request.dsn#">
select boardid,boardname from board
order by boardid
</cfquery>

<html>
<head>
    <title>ccforum栏目一览</title>
</head>
<body>

<center><h3>ccforum栏目一览</h3></center><br><br>
<table border="1" align="center">
<tr><td align="center"><b>编号</b></td><td align="center"><b>名称</b></td></tr>
<cfoutput query="viewlist">
<tr><td align="center">#boardid#</td><td align="left">#boardname#</td></tr>
</cfoutput>
</table>
<p>
<center>
<a href="web.cfm" target="_blank">以web方式用excel打开</a><br><br>
<a href="doc.cfm" target="_blank">以web方式用word打开</a><br><br>
<a href="file.cfm" target="_blank">生成excel文件并下载</a><br><br><br>
copyright(c)wait hun.net.com
</center>
</body>
</html>

<!-----这个文件是用来在线以excel文件形式打开的代码---->

<!doctype html public "-//w3c//dtd html 4.01 transitional//en">
<cfsetting enablecfoutputonly="yes">
<cfquery name="getboard" datasource="#request.dsn#">
select boardid,boardname from board
order by boardid
</cfquery>

<cfcontent type="application/msexcel">
<cfheader name="content-disposition" value="filename=board.xls">

<cfset tabchar=chr(9)>
<cfset newline=chr(13)&chr(10)>

<cfloop query="getboard">
<cfoutput>#boardid##tabchar##boardname##newline#</cfoutput>
</cfloop>

<!--------增加一个生成word示范....注意,就只改动了一处.--------->

<!doctype html public "-//w3c//dtd html 4.01 transitional//en">
<cfsetting enablecfoutputonly="yes">
<cfquery name="getboard" datasource="#request.dsn#">
select boardid,boardname from board
order by boardid
</cfquery>

<cfcontent type="application/msword">
<cfheader name="content-disposition" value="filename=board.doc">

<cfset tabchar=chr(9)>
<cfset newline=chr(13)&chr(10)>

<cfloop query="getboard">
<cfoutput>#boardid##tabchar##boardname##newline#</cfoutput>
</cfloop>

<!---大家关心的来了,接下来我们做重要部分了---->

<!doctype html public "-//w3c//dtd html 4.01 transitional//en">
<cfsetting enablecfoutputonly="yes"><!-- 删除空白,提高性能 -->

<cfparam name="filebody" default="">
<cfset tabchar=chr(9)><!-- 设置tab变量 -->
<cfset newline=chr(13)&chr(10)><!-- 设置换行变量 -->

<cfset filepath=expandpath("file/")><!-- 把相对路径换成绝对路径 -->
<cfset writepath="#filepath##session.cfid#.xls"><!-- 绝对路径加上文件名 -->

<!-- 查询数据 -->
<cfquery name="getboard" datasource="#request.dsn#">
select boardid,boardname from board
order by boardid
</cfquery>

<!-- 把所有信息设为一个变量filebody -->
<cfloop query="getboard">
<cfoutput>
<cfset filebody=filebody & "#boardid##tabchar##boardname#" & newline>
</cfoutput>
</cfloop>

<!-- 把filebody写入文件 -->
<cffile action="write" file="#writepath#" output="#filebody#" addnewline="no">


<cfoutput>你所需要的信息已经生成excel格式文件,
文件地址是:<br>

<a href="file/#session.cfid#.xls">http<cfif cgi.https neq 'off'>s</cfif>

://#cgi.http_host#/cf/excel/file/#session.cfid#.xls</a>

</cfoutput>

  值得注意的,我把存放动态生成的xls文件存放在一个叫file的文件夹.你运行这代码时必须先建立一个file文件夹....要不然会出错.

相关讨论:

http://www.blueidea.com/bbs/newsdetail.asp?id=791903


 


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons