将不同语言的内容导出到c#中的.csv文件中

本文关键字:中的 csv 文件 语言 | 更新日期: 2023-09-27 17:59:28

我正在尝试导出.csv文件中的数据。这里的数据有不同的语言(阿拉伯语、丹麦语等)。。文件可以成功导出,但文件中的数据内容被替换为?以及其他符号。我需要导出.csv文件中的数据。我尝试了在网上找到的所有可能的方法,但无法导出正确的数据。你能帮帮我吗。

感谢

下面是我的代码。

 protected void lnkExport_Click(object sender, EventArgs e)
        {
            List<Entities.Users_Users> lstUsers = new List<Entities.Users_Users>();
            lstUsers = BLL.Users_Users.GetDealerUsers(Convert.ToInt16(dealerid));
            StringBuilder sb = new StringBuilder();
            sb.Clear();
            sb.Append("[USERNAME],[PREFIX],[FIRSTNAME],[MIDDLENAME],[LASTNAME],[COMPANYNAME],[JOBTITLE],[CONTACTEMAILID],[USERTYPECODE],[STATUSCODE],[DEALER],[PHONE],[COMPANYLANGUAGE],[ISRECEIVECAMPAIGN],[RECEIVECAMPAIGNEMAILID]");
            sb.Append("'r'n");
            foreach (Entities.Users_Users UserDetail in lstUsers)
            { 
                sb.Append(UserDetail.UserName + "," + UserDetail.Prefix + "," + UserDetail.FirstName + "," + UserDetail.MiddleName + ",");
                sb.Append(UserDetail.LastName + "," + UserDetail.CompanyName + "," + UserDetail.JobTitle + ",");
                sb.Append(UserDetail.ContactEmailID + "," + UserDetail.UserTypeCode + "," + UserDetail.StatusCode + ",");
                sb.Append(UserDetail.DealerName + "," + UserDetail.Phone + "," + UserDetail.Language + ",");
                sb.Append(UserDetail.IsReceiveCampaign + "," + UserDetail.ReceiveCampaignEmailId);
                sb.Append("'r'n");
            }

            UTF8Encoding utf8 = new UTF8Encoding();

            var preamble = utf8.GetPreamble();
            var data = utf8.GetBytes(sb.ToString());

            //string attachment = String.Format("attachment;filename=ExportUsers.csv", "uomEncoded");
          //  Encoding encoding = Encoding.UTF8;
            Response.Clear();
            Response.ClearHeaders();
            Response.ClearContent();
            Response.ContentType = "text/csv";  
            Response.ContentEncoding = System.Text.Encoding.UTF8;
           // Response.Buffer = true;
            Response.AddHeader("content-disposition", "attachment;filename=ExportUsers.csv");
            //Response.Charset = "";
           // Response.Charset = encoding.EncodingName;

            Response.Write(sb.ToString());
            Response.Flush();
            Response.End();
        }

将不同语言的内容导出到c#中的.csv文件中

这就是您可能缺少的内容(第一行):

Response.BinaryWrite(System.Text.Encoding.UTF8.GetPreamble());
Response.Write(sb.ToString());