Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/64: Рейтинг темы: голосов - 64, средняя оценка - 4.72
0 / 0 / 0
Регистрация: 07.01.2020
Сообщений: 9

Запись текстового (.txt) в кодировке ANSI

07.01.2020, 01:12. Показов 14067. Ответов 7

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста сохранять .txt из UTF-8 в ANCI



C#
1
2
3
4
5
6
7
8
9
10
11
12
OpenFileDialog o = new OpenFileDialog();
            o.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
            if (o.ShowDialog() == DialogResult.OK)
 
            {
                textBox2.Text = File.ReadAllText(o.FileName, Encoding.Default);
            }
 
            string path = @"Process"; //Путь
            System.IO.StreamWriter wr = new System.IO.StreamWriter(path + "text.txt"); //Инициализация StreamWriter            
            foreach (var line in textBox2.Lines) wr.WriteLine(line); //Записываем каждую строчку          
            wr.Close(); //Закрываем StreamWriter
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.01.2020, 01:12
Ответы с готовыми решениями:

Как сохранить html-страницу в кодировке ANSI (сохраняет только в UTF-8)?
Добрый день! Нужно сохранить страницу в файл в кодировке ANSI. Если открыть страницу в webbrowser, то сохраняется в ANSI: ...

При открытии текстового файла, файл открывается в другой кодировке
Я пытаюсь открывать текстовый файл по нажатию кнопки в textBox. Но при открытии файла, получается вот такая билибирда: ...

считать посимвольно txt файл в ANSi кодировке
Всем привет! Понимаю, что наверное вопрос о считывании посимвольно txt файлов уже обсуждался и не...

7
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18240 / 14154 / 5366
Регистрация: 17.03.2014
Сообщений: 28,841
Записей в блоге: 1
07.01.2020, 12:41
Лучший ответ Сообщение было отмечено StarDreaming как решение

Решение

StarDreaming, раз требуется перекодировать из UTF-8 в ANSI (зачем кстати? Юникод лучше чем ANSI), то нужно прочитать файл в кодировке UTF-8, а записывать в ANSI. Приведенный же код делает наоборот.

Исправленный код:
C#
1
2
3
4
5
6
7
8
9
10
            OpenFileDialog o = new OpenFileDialog();
            o.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
            if (o.ShowDialog() == DialogResult.OK)
 
            {
                textBox2.Text = File.ReadAllText(o.FileName, Encoding.UTF8);
            }
 
            string path = @"Process"; //Путь
            File.WriteAllText(path, textBox2.Text, Encoding.Default);
1
0 / 0 / 0
Регистрация: 07.01.2020
Сообщений: 9
07.01.2020, 13:55  [ТС]
Извините, но очень ругается на
C#
1
File.WriteAllText(path, textBox2.Text, Encoding.Default);
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18240 / 14154 / 5366
Регистрация: 17.03.2014
Сообщений: 28,841
Записей в блоге: 1
07.01.2020, 13:58
StarDreaming, как именно ругается?
0
0 / 0 / 0
Регистрация: 07.01.2020
Сообщений: 9
07.01.2020, 15:12  [ТС]
Пишет, что оказано в доступе по определенному пути

Добавлено через 11 минут
OwenGlendower, я немного переделал путь изменения


C#
1
2
string path = @"Process\\text.txt"; //Путь
File.WriteAllText(path, textBox2.Text, Encoding.Default);

вся программа прошла успешно, но получилось так что оно не распознает кириллицу

Добавлено через 1 час 0 минут
Вы ведь поможете?((
0
Модератор
Эксперт .NET
 Аватар для Yury Komar
4356 / 3426 / 512
Регистрация: 27.01.2014
Сообщений: 6,257
07.01.2020, 15:43
StarDreaming, укажите явно кодировку, вместо Default пишите UTF8 например
0
0 / 0 / 0
Регистрация: 07.01.2020
Сообщений: 9
07.01.2020, 15:57  [ТС]
Все, я обнаружил ошибку

C#
1
2
3
4
5
if (o.ShowDialog() == DialogResult.OK)
 
            {
                textBox2.Text = File.ReadAllText(o.FileName, Encoding.UTF8);
            }
тут в конце textBox2 написано Encoding.UTF8, а надо было Default. В этом и была проблема.
Теперь код выглядит так

C#
1
2
3
4
5
6
7
8
9
10
OpenFileDialog o = new OpenFileDialog();
            o.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
            if (o.ShowDialog() == DialogResult.OK)
 
            {
                textBox2.Text = File.ReadAllText(o.FileName, Encoding.Default);
            }
 
            string path = @"Process\\text.txt"; //Путь            
            File.WriteAllText(path, textBox2.Text, Encoding.Default);
Всем спасибо кто помогал мне при много благодарен.)
0
Модератор
Эксперт .NET
 Аватар для Yury Komar
4356 / 3426 / 512
Регистрация: 27.01.2014
Сообщений: 6,257
07.01.2020, 16:32
так у вас ведь и было изначально Default
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.01.2020, 16:32
Помогаю со студенческими работами здесь

Обработка .txt кодировка ANSI и UTF-8 (буква "я" в ANSI воспринимается как EOF)
Есть следующий кусок кода: FILE* fp = fopen("G:\OPND1.txt", "r"); if (fp!=NULL) // если файл удалось открыть { while((ch =...

Файл в кодировке ANSI
Лазарус работает с UFT8 и файлы, которые сохраняются через TStringList или TextFile так же имеют кодировку UTF8. Необходимо: ...

Чтение файлов в кодировке ANSI
Собственно, файл в родной кодировке не воспринимается, приходиться конвертировать кодировку в UTF-8, что не очень удобно. Можно как-то...

Проверка значений по кодировке ANSI
Привет всем! Появилась такая необходимость, сверять поступающие hex данные с кодировкой ANSI и отсеивать неподходящие. Есть какая то...

Как создать файл в кодировке ANSI
Как создать файл в кодировке ANSI ? Не нужно задавать свои вопросы в чужих темах


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru