StreamWriter портит русские буквы...
От: Corvin Украина  
Дата: 04.03.05 14:41
Оценка:
Привет всем,

долго думал, куда же запостить этот вопрос, — в .НЕТ или в АСП.НЕТ и решил в конце концов, что лучше все-таки сюда...
Я хочу сохранять веб-страницы, генерируемые моим скриптом на диск. Для этого я работаю с Response.Filter. Когда я получаю хтмл-код, который будет выводиться браузеру, я делаю так:


public override void Write(byte[] buffer, int offset, int count)
{
        using (BinaryWriter bw = new BinaryWriter(File.Open(_scriptDir+@"\test.html",FileMode.Create)))
        {
          bw.Write(buffer,0,count);
        }
    _sink.Write(buffer,offset,count);
}


где buffer — это массив byte[] с кодом страницы. В результате вместо русских букв в сохраненном файле оказываются закорлюки. Как нужно правильно сохранять русские(и прочие) буквы?
Re: StreamWriter портит русские буквы...
От: Аноним  
Дата: 05.03.05 11:17
Оценка:
Здравствуйте, Corvin, Вы писали:

C>Привет всем,


C>долго думал, куда же запостить этот вопрос, — в .НЕТ или в АСП.НЕТ и решил в конце концов, что лучше все-таки сюда...

C>Я хочу сохранять веб-страницы, генерируемые моим скриптом на диск. Для этого я работаю с Response.Filter. Когда я получаю хтмл-код, который будет выводиться браузеру, я делаю так:


C>
C>public override void Write(byte[] buffer, int offset, int count)
C>{
C>        using (BinaryWriter bw = new BinaryWriter(File.Open(_scriptDir+@"\test.html",FileMode.Create)))
C>        {
C>          bw.Write(buffer,0,count);
C>        }
C>    _sink.Write(buffer,offset,count);
C>}    
C>


C>где buffer — это массив byte[] с кодом страницы. В результате вместо русских букв в сохраненном файле оказываются закорлюки. Как нужно правильно сохранять русские(и прочие) буквы?


второй параметр у BinatyWriter это кодировка.
Попробуй ее задать например в UTF8 или ту что тебе надо
Re[2]: StreamWriter портит русские буквы...
От: Corvin Украина  
Дата: 05.03.05 11:26
Оценка:
Здравствуйте, Аноним, Вы писали:

А>второй параметр у BinatyWriter это кодировка.

А>Попробуй ее задать например в UTF8 или ту что тебе надо

все пробовал... даже с Encoding.GetEncoding игрался. Не помогает
Re[3]: StreamWriter портит русские буквы...
От: _orion_  
Дата: 05.03.05 11:34
Оценка:
Здравствуйте, Corvin, Вы писали:

C>Здравствуйте, Аноним, Вы писали:


А>>второй параметр у BinatyWriter это кодировка.

А>>Попробуй ее задать например в UTF8 или ту что тебе надо

C>все пробовал... даже с Encoding.GetEncoding игрался. Не помогает


ок, тогда для интереса попробуй считать массив байт не сразу в файл, а встроку типа string.
И посмотри что в ней будет(закорлючки или нет)
Re[4]: StreamWriter портит русские буквы...
От: Corvin Украина  
Дата: 05.03.05 11:47
Оценка:
Здравствуйте, _orion_, Вы писали:

__>Здравствуйте, Corvin, Вы писали:


__>ок, тогда для интереса попробуй считать массив байт не сразу в файл, а встроку типа string.

__>И посмотри что в ней будет(закорлючки или нет)

ну если смотреть в дебаггере, то все ок, русские буковки
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.