在asp.net中将DataTable导出到Excel文件

时间:2011-10-21 00:32:57

标签: c# asp.net excel datatable

我读过这篇文章,将数据表导出到excel文件。 它运作得很好。

Export DataTable to Excel File

,代码如下:

dt = city.GetAllCity();//your datatable 
string attachment = "attachment; filename=city.xls"; 
Response.ClearContent(); 
Response.AddHeader("content-disposition", attachment); 
Response.ContentType = "application/vnd.ms-excel"; 
string tab = ""; 
foreach (DataColumn dc in dt.Columns) 
{ 
    Response.Write(tab + dc.ColumnName); 
    tab = "\t"; 
} 
Response.Write("\n"); 
int i; 
foreach (DataRow dr in dt.Rows) 
{ 
    tab = ""; 
    for (i = 0; i < dt.Columns.Count; i++) 
    { 
        Response.Write(tab + dr[i].ToString()); 
        tab = "\t"; 
    } 
    Response.Write("\n"); 
} 
Response.End(); 

但是当我使用这些代码时,韩文字符都被破坏了。 任何人都可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:2)

我为土耳其语使用windows-1254字符集。我想KS_X_1001会对你有用。 有关更多集:http://en.wikipedia.org/wiki/Character_encoding

Response.ContentEncoding = System.Text.Encoding.GetEncoding("windows-1254");
Response.Charset = "windows-1254";