Люди, подскажите как прочитать русский текст из файла в С#
следующий код работает только для латинских символов((
string res = "";
StreamReader sr = new StreamReader(name);
res = sr.ReadLine().Trim();
sr.Close();
Здравствуйте, Serjinio, Вы писали:
S>Люди, подскажите как прочитать русский текст из файла в С#
S>следующий код работает только для латинских символов((
S>S> string res = "";
S> StreamReader sr = new StreamReader(name);
S> res = sr.ReadLine().Trim();
S> sr.Close();
S>
Файлы по-умолчанию открываются в кодировке UTF-8, а твой файл сохранен, вероятнее всего в cp1251. Латиница в UTF-8 выглядит также, как любой другой кодировке, а вот с русскими буквами не так.
Кодировку надо явно указывать при открытии.
string res = "";
StreamReader sr = new StreamReader(name,Encoding.GetEncoding(1251)/*или Encoding.Default если 1251 - кодировка по-умолчанию системы*/);
res = sr.ReadLine().Trim();
sr.Close();
А вообще такой код лучше заменить на
string res = File.ReadAllText(name,Encoding.Default);
gandjustas, спсибо, рельно помог
Здравствуйте, gandjustas, Вы писали:
G>А вообще такой код лучше заменить на
G>G>string res = File.ReadAllText(name,Encoding.Default);
G>
У вас память бесконечна? А если у меня файл на 10 гигов?
Здравствуйте, Konstantin.Nizhegorodov, Вы писали:
KN>Здравствуйте, gandjustas, Вы писали:
G>>А вообще такой код лучше заменить на
G>>G>>string res = File.ReadAllText(name,Encoding.Default);
G>>
KN>У вас память бесконечна? А если у меня файл на 10 гигов?
Текстовик на 10 Гигов?
Здравствуйте, gandjustas, Вы писали:
S>> string res = "";
S>> StreamReader sr = new StreamReader(name);
S>> res = sr.ReadLine().Trim();
S>> sr.Close();
G>А вообще такой код лучше заменить на
G>string res = File.ReadAllText(name,Encoding.Default);
А что, разве нет разницы: прочитать только первую строку
S>> res = sr.ReadLine().Trim();
и все строки
G>string res = File.ReadAllText(name,Encoding.Default);
Здравствуйте, _d_m_, Вы писали:
___>Здравствуйте, Konstantin.Nizhegorodov, Вы писали:
KN>>Здравствуйте, gandjustas, Вы писали:
G>>>А вообще такой код лучше заменить на
G>>>G>>>string res = File.ReadAllText(name,Encoding.Default);
G>>>
KN>>У вас память бесконечна? А если у меня файл на 10 гигов?
___>Текстовик на 10 Гигов?
Не понял, что Вас смутило. Да, запросто. Текстовик на 10 ГИГОВ — логи за день, например.