文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>【ColdFusion】读取指定Excel中的内容,并且上传到服务器指定目录

【ColdFusion】读取指定Excel中的内容,并且上传到服务器指定目录

时间:2010-08-18  来源:Peter Jin

读取Excel内容的自定义函数如下:
fnc_ReadExcelSheet.cfm

<cffunction name="ReadExcelSheet" access="public" output="false" returntype="query">
   <cfargument name="filename" required="true" type="string" />
   <cfargument name="sheetName" required="true" type="string" />
   <cfscript>
       var c = "";
       var stmnt = "";
       var rs = "";
       var sql = "Select * from [#sheetName#$]";
       var myQuery = "";
       arguments.filename = expandPath(arguments.filename);
      
       if(len(trim(arguments.filename)) and fileExists(arguments.filename))
       {
          try
          {
             CreateObject("java","java.lang.Class").forName("sun.jdbc.odbc.JdbcOdbcDriver");
             c = CreateObject("java","java.sql.DriverManager").getConnection("jdbc:odbc:Driver={Microsoft Excel Driver (*.xls)};DBQ=" & arguments.filename );
             stmnt = c.createStatement();
             rs = stmnt.executeQuery(sql);
             myQuery = CreateObject('java','coldfusion.sql.QueryTable').init(rs);
          }
          catch(any e)
          {
             // 异常  
        }
       }
       return myQuery;
   </cfscript>
</cffunction>

 
对上面自定义函数的具体应用如下:
index.cfm

<cfoutput>
<html>
<FORM ACTION="dsp_data.cfm"
              ENCTYPE="multipart/form-data"
              METHOD="Post">
        File: <INPUT NAME="FileContents" TYPE="file">
        <INPUT TYPE="submit" VALUE="Upload">
        </FORM>
    </html>
</cfoutput>

dsp_data.cfm

<cfoutput>
<cfinclude template="fnc_ReadExcelSheet.cfm">
<CFFILE ACTION="Upload"
                FILEFIELD="FileContents"
                DESTINATION="D:\www\ReadExcel\files\ImportDefaultData.xls"
                NAMECONFLICT="OVERWRITE">
        <CFOUTPUT>
            Upload File Success !<br>
            源文件:#cffile.ClientDirectory##cffile.ClientFile#<br>
            目标文件:#cffile.ServerFile#
        </CFOUTPUT>

<cfset QueryExcel = #ReadExcelSheet("files\ImportDefaultData.xls","Sheet1")#>
<html>
<head><title>ReadExcelSheet</title></head>
<body>
<br/><br/>
ReadExcelSheet<br/><br/><hr/>

<table><tbody>
<!---一覧ヘッダー--->
<tr>
    <th width="25">No</th>
    <th width="200" nowrap>ソースパス</th>
    <th width="180" nowrap>ファイル名</th>
    <th width="100" nowrap>Line</th>
    <th nowrap>日本語文字</th>
</tr>
<!---一覧ボディー--->
<cfloop index="loop" from="1" to="#QueryExcel.recordcount#">
    <tr>
        <td width="20" style="text-align:center">
            #loop#
        </td>
        <td style="text-align:center">
            #QueryExcel.ソースパス[loop]#
        </td>
        <td style="text-align:center">
            #QueryExcel.ファイル名[loop]#
        </td>
        <td style="text-align:center">
            #QueryExcel.Line[loop]#
        </td>
        <td nowrap>
            #QueryExcel.日本語文字[loop]#
        </td>
    </tr>
</cfloop>
</tbody></table>
</body>
</html>
</cfoutput>

 

 

相关阅读 更多 +
排行榜 更多 +
方块枪战战场安卓版

方块枪战战场安卓版

飞行射击 下载
战斗火力射击安卓版

战斗火力射击安卓版

飞行射击 下载
空中防御战安卓版

空中防御战安卓版

飞行射击 下载