0

csv ファイルを生成するために、次の asp コードを作成しました。

<%@ 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 ブラウザーに表示されます。

レコード数に関係なく、(.asp ファイルではなく) csv ファイルを正常に生成する必要があります。どうすればそれができますか?

4

1 に答える 1

0

ヘッダーを送信して、ブラウザに特定のファイル名のダウンロード可能なファイルであることを伝えてみてください。

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