Кирилица в ответе HttpListenerResponse?

Класс HttpListenerResponse в C# представляет ответ сервера на HTTP-запрос. Если вы хотите использовать кириллицу в ответе, вам необходимо установить правильные заголовки Content-Type и Content-Encoding в объекте HttpListenerResponse.

Первым шагом необходимо установить кодировку символов для отправляемого ответа. В качестве примера, предположим, что вы хотите использовать UTF-8 кодировку. Для этого вам нужно установить заголовок Content-Encoding:

HttpListenerResponse response = context.Response;
response.ContentEncoding = Encoding.UTF8;

Далее, необходимо установить правильный Content-Type заголовок, указывающий на использование кириллицы. В C# принято использовать MIME-тип text/html для ответа, содержащего текст. Для установки этого заголовка можно использовать свойство Response.ContentType:

response.ContentType = "text/html; charset=utf-8";

Теперь вы можете отправить кириллический текст в теле ответа, используя StreamWriter:

using (StreamWriter writer = new StreamWriter(response.OutputStream))
{
    writer.WriteLine("Привет, мир!");
}

Полный код может выглядеть примерно так:

HttpListenerResponse response = context.Response;
response.ContentEncoding = Encoding.UTF8;
response.ContentType = "text/html; charset=utf-8";

using (StreamWriter writer = new StreamWriter(response.OutputStream))
{
    writer.WriteLine("Привет, мир!");
}

Таким образом, установив правильные заголовки Content-Type и Content-Encoding, и отправив кириллический текст с использованием StreamWriter, можно успешно передать кириллицу в ответе HttpListenerResponse в C#.