С#, Как в консоли сохранить русский текст?
задача сия выше нашего понимания...
А что не понятно? После сохранения файла слово "XУЙ" затирается, а "ПИ3ДА" не появляется. Хотя если написать транслитом, то всё нормально, т.е. английские буквы без проблем читает и переписывает.
код, который у тебя сейчас есть и не работает в студию. Пока не до конца понял, что ты хочешь и что не получается, надеюсь код внесет ясность в ситуацию.
не совсем понял вопрос, но при записи в файл указывай кодировку которая тебе нужна
А как указать кодировку? Приведи какой-нибудь пример плиз.
StreamReader sr = new StreamReader("Data.DAT");
string str = sr.ReadToEnd;
sr.Close;
Если в указанном файле "Data.DAT" содержится русский текст, то переменная str остается пустой.
Может, кто подскажет, в чем дело?

Слушай Лёх! У меня она пустой не остаётся. Она потом текстпадом некорректно читается. К примеру знаки вопросов вместо букв.
string all_Text;
StreamReader InStream=null;
StreamWriter OutStream=null;
FileInfo textFile=new FileInfo(@"C:\text.txt");
InStream=textFile.OpenText;
all_Text=InStream.ReadToEnd;
InStream.Close;
all_Text="ПИЗДА";
Как теперь переменную all_Text сохранить в тот же файл, чтоб русские буквы нормально отображались.
Encoding enc = Encoding.GetEncoding(1251);
string text = File.ReadAllText(@"c:\text.txt", enc);
File.WriteAllText(@"c:\text.txt", "Тут был Вася", enc);
Возможно, вместо Encoding.GetEncoding(1251) будет удобным поставить Encoding.UTF8
зы. Почитай про конструкцию языка C# using. Она упростит тебе в некоторых случаях твой код.
Спасибо!
Оставить комментарий
nats
Ситуация такая. В консоли, с текстового файла считывается русский текст (слово). После некоторых с ним манипуляций (пусть, допустим файле в слово "XУЙ" хотелось бы заменить и сохранить другое русское слово ("ПИ3ДА" ,например) . Как это сделать?