Как написать не английские символы в HttpResponse - PullRequest
0 голосов
/ 14 марта 2012

У меня проблемы с записью некоторых китайских символов в ответ http.Я устанавливаю application / vnd.ms-excel в ContentType.

Когда я просматриваю файл excel, я не вижу написанные мной символы.Я пробовал использовать другую кодировку, но она не работает.Я что-то упустил?

 protected void Button1_Click(object sender, EventArgs e)
    {
        HttpResponse response = Page.Response;
        response.Clear();
        response.ClearHeaders();
        response.ContentEncoding = System.Text.UnicodeEncoding.GetEncoding("GB2312");
        response.Charset = "GB2312";
        response.AddHeader("Content-Disposition", "attachment;filename=myfile.xls");
        response.ContentType = "application/vnd.ms-excel;charset=GB2312";
        response.Write("盈亏 你好你好你怎么样");
        response.Flush();
        response.End();
    }

Ответы [ 2 ]

1 голос
/ 14 марта 2012

Нам удалось решить эту проблему, используя Response.BinaryWrite вместо Response.Write.Спасибо, парни!

1 голос
/ 14 марта 2012

Вы пытались поместить это в web.config

<globalization fileEncoding="utf-8" requestEncoding="utf-8" responseEncoding="utf-8" responseHeaderEncoding="utf-8" />

, затем вывести как UTF8

...