0

我编写了以下 asp 代码来生成一个 csv 文件:

<%@ Language=JScript %>

<%
Response.ContentType = "text/csv";

     var boCaseDetail = Server.CreateObject ("ADODB.Recordset");
var strCon = "DSN=FAS";
var adForwardOnly = 3;
var adLockReadOnly = 1;
var adCmdText = 1;

     var sSqlCaseDetail = "Select objid,id_number, case2address,case_reporter2contact, case_reporter2site, x_fault_id from table_case where id_number in (" + filterFID + ") " ;

     boCaseDetail.Open(sSqlCaseDetail, strCon, adForwardOnly, adLockReadOnly, adCmdText);

     while(!boCaseDetail.EOF)
{
         output = boCaseDetail("x_fault_id").value + " " + cstrDelim + boCaseDetail("id_number").value + cstrDelim + "\n";

         Response.Write (output);

         boCaseDetail.MoveNext();   
}  
boCaseDetail.Close();
}

%>

上面的脚本在单击按钮时生成一个 asp 文件。当获取的记录数少于 200 时,它正在创建一个 asp 文件。但是当记录数超过 200 时,不会生成文件。相反,数据显示在 Web 浏览器中。

无论记录数如何,我都需要成功生成一个 csv 文件(而不是 .asp 文件)。怎么做到呢?

4

1 回答 1

0

尝试发送标头以告诉浏览器它是具有给定文件名的可下载文件:

<%
Response.ContentType = "text/csv";
Response.AddHeader "Content-Disposition", "attachment; filename=YourFileName.csv"
于 2013-01-16T13:42:21.207 回答