[英]Download multiple csv files in one zip folder in ASP .Net
我想在一個 ZIP 文件中添加兩個 CSV 文件。 並在 Clint 端的 ASP Net 中下載。 我正在使用數據集將 data.table 記錄合並到一個數據集中,需要在單擊按鈕時下載。 我不確定這是不是好方法,但是,我在“存檔”上遇到錯誤。 我已經添加了
using System.IO;
using System.IO.Compression;
代碼:
protected void btnGenerate_Click(object sender, EventArgs e)
{
DataSet ds = getDataCSV();
DataTable dt = ds.Tables[0];
string csv = string.Empty;
foreach (DataRow row in dt.Rows)
{
foreach (DataColumn column in dt.Columns)
{
csv += row[column.ColumnName].ToString().Replace(",", ";") + ',';
}
csv += "\r\n";
}
DataTable dt1 = ds.Tables[1];
string csv1 = string.Empty;
foreach (DataRow row in dt1.Rows)
{
foreach (DataColumn column in dt1.Columns)
{
csv1 += row[column.ColumnName].ToString().Replace(",", ";") + ',';
}
csv1 += "\r\n";
}
using (FileStream zipFile = File.Open("compressed_files.zip", FileMode.Create))
{
using (FileStream source1 = File.Open(csv, FileMode.Open, FileAccess.Read))
{
using (FileStream source2 = File.Open(csv1, FileMode.Open, FileAccess.Read))
{
using (var archive = new Archive())
{
// Add files to the archive
archive.CreateEntry(csv, source1);
archive.CreateEntry(csv1, source2);
archive.Save(zipFile, new ArchiveSaveOptions() { Encoding = Encoding.ASCII, ArchiveComment = "two files are compressed in this archive" });
}
}
}
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.