Excel和CSV导出不会正确显示波斯字符

问题描述 投票:-3回答:1

将SQL Server数据导出到.csv时,波斯语中的短语无法正确显示。

string date = Helper.ToPersianDate(DateTime.Now).Replace("/", "");
date += ".csv";

Response.Clear();
Response.AppendHeader("content-disposition", "attachment; filename=" + date);
Response.ContentType = "text/csv";
Response.Charset = Encoding.Unicode.ToString();

foreach (DataRow r in ds.Tables[0].Rows)
{
    Response.Write(r[0]);
    Response.Write("\r\n");
}
Response.End();      
c# asp.net export-to-excel export-to-csv persian
1个回答
0
投票
string date = Helper.ToPersianDate(DateTime.Now).Replace("/", "");
date += ".csv";

Response.Clear();
Response.AppendHeader("content-disposition", "attachment; filename=" + date);
Response.ContentType = "text/csv";
Response.Charset = Encoding.Unicode.ToString();
Response.ContentEncoding = System.Text.Encoding.Unicode;

/*
 save utf-8 with BOM
 GetPreamble
 */  
Response.BinaryWrite(System.Text.Encoding.Unicode.GetPreamble());

foreach (DataRow r in ds.Tables[0].Rows)
{
    Response.Write(r[0]);
    Response.Write("\r\n");
}
Response.End();      
© www.soinside.com 2019 - 2024. All rights reserved.