How to download DataTable in Excel format in C#
By Tan Lee Published on Nov 06, 2024 242
To download tabular data such as DataTable data in Excel CSV/TSV format in C#, you can follow these steps.
To add a tabular data download feature to a web page.
You need to create CSV or TSV content, then convert your tabular data (e.g., from a DataTable
) into a CSV or TSV formatted string.
Next, Send the CSV/TSV Data to the Web Client by using Response.Write()
to output plain text data (CSV/TSV) to the browser.
If the data needs to be sent as a file download (e.g., *.csv
or *.tsv
), ensure to set the appropriate headers and use Response.BinaryWrite()
to send a byte array for the file content.
private void ExportToTsv(DataTable dt) { // Create tsv content var sb = new StringBuilder(); // Add tsv header var columnNames = dt.Columns.Cast().Select(column => column.ColumnName).ToArray(); var headers = string.Join("\t", columnNames); sb.AppendLine(headers); // Add tsv rows var rows = dt.AsEnumerable().Select(row => string.Join("\t", row.ItemArray)); foreach (var r in rows) sb.AppendLine(r); string tsvContent = sb.ToString(); // Send data to web client Response.Clear(); Response.AddHeader("content-disposition", "attachment;filename=data.tsv"); Response.ContentType = "application/octet-stream"; Response.Write(tsvContent); Response.End(); }
Categories
Popular Posts
11 Things You Didn't Know About Cloudflare
Dec 19, 2024
Dash UI HTML5 Admin Dashboard Template
Nov 18, 2024
Focus Admin Dashboard Template
Nov 18, 2024
Material Lite Admin Template
Nov 14, 2024