【发布时间】:2009-06-17 07:13:59
【问题描述】:
我有以下代码:
public void ProcessRequest (HttpContext context)
{
context.Response.ContentType = "text/rtf; charset=UTF-8";
context.Response.Charset = "UTF-8";
context.Response.ContentEncoding = System.Text.Encoding.UTF8;
context.Response.AddHeader("Content-disposition", "attachment;filename=lista_obecnosci.csv");
context.Response.Write("ąęćżźńółĄŚŻŹĆŃŁÓĘ");
}
当我尝试打开生成的 csv 文件时,我得到以下行为:
- 在 Notepad2 中 - 一切正常。
- 在 Word 中 - 转换向导打开并要求转换文本。它建议使用 UTF-8,这在某种程度上是可以的。
- 在 Excel 中 - 我真的一团糟。无法显示这些波兰语字符。
我想在我的字符串前面写那些特殊的编码信息字符,即
context.Response.Write((char)0xef);
context.Response.Write((char)0xbb);
context.Response.Write((char)0xbf);
但这不会有任何好处。响应流将其视为普通数据并将其转换为不同的数据。
我会很感激这方面的帮助。
【问题讨论】:
标签: asp.net encoding response response.write