Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.59/22: Рейтинг темы: голосов - 22, средняя оценка - 4.59
0 / 0 / 0
Регистрация: 19.09.2010
Сообщений: 12

Перекодировать текстовые файлы в указанной папке из исходной кодировки в другую

03.01.2013, 12:29. Показов 4412. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
полное задание:
Перекодировать текстовые файлы в указанной папке из исходной кодировки в другую, старые файлы сохранить, добавив к имени файла . bkp. Возможные кодировки ASCII, WIN-1251, kui8- r, ISO-866, Unicode
Почитав немного ужаснулся и понял что сам такое непотяну.
Прога ориентировочна должна быть консольной тк.. как они попроще.
Вроде по отзывам однокурсников прога нетакя уж и большая.
Буду очень благодарен если объясните что и как делать, или дадите ссыль на код с объяснениями

Добавлено через 29 минут
есть 1 пример, скорее всего тут есть что надо если объясните как и что тут надо с ним сделать то буду очень благодарен
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
 
namespace encod
{
    class Program
    {
        static void Main(string[] args)
        {
            // #1
            //// Получить корейскую кодировку
            //Encoding e = Encoding.GetEncoding("Korean");
 
            //// Преобразовать байты ASCII-кодов в корейскую кодировку
            //byte[] encoded;
            //encoded = e.GetBytes("Hello, world!");
            //// Отобразить байты в заданной кодировке 
            //for (int i = 0; i < encoded.Length; i++)
            //Console.WriteLine("Byte {0}: {1}", i, encoded[i]);
 
            // #2 Проверка поддерживаемых кодовых страниц
            //EncodingInfo[] ei = Encoding.GetEncodings(); 
            //foreach (EncodingInfo e in ei)
            //    Console.WriteLine("{0}: {1}, {2}", e.CodePage, e.Name, e.DisplayName);
 
            // #3 Определение кодировки при записи файла
 
            //StreamWriter swUtf7 = new StreamWriter("utf7.txt", false, Encoding.UTF7);
            //swUtf7.WriteLine("Hello, World!");
            //swUtf7.Close();
 
            //StreamWriter swUtf8 = new StreamWriter("utf8.txt", false, Encoding.UTF8);
            //swUtf8.WriteLine("Hello, World!");
            //swUtf8.Close();
 
            //StreamWriter swUtf16 = new StreamWriter("utf16.txt", false, Encoding.Unicode);
            //swUtf16.WriteLine("Hello, World!");
            //swUtf16.Close();
            //StreamWriter swUtf32 = new StreamWriter("utf32.txt", false, Encoding.UTF32);
            //swUtf32.WriteLine("Hello, World!");
            //swUtf32.Close();
 
            // ПРИМЕЧАНИЕ  Выбор кодировки
            //Если вы не знаете, какую кодировку выбрать при создании файла, оставьте кодировку по умолчанию, в .NET Framework это UTF-16.
 
            //#4 Определение кодировки при чтении файла
 
            //string fn = "file.txt";
            //StreamWriter sw = new StreamWriter(fn, false, Encoding.UTF7);
            //sw.WriteLine("Здравствуй, МИР!");
            //sw.Close();
            //StreamReader sr = new StreamReader(fn, Encoding.UTF7);
            //Console.WriteLine(sr.ReadToEnd());
            //sr.Close();
 
            //#5
            //string fn = "file.txt";
            //StreamWriter sw = new StreamWriter(fn, false, Encoding.UTF7);
            //sw.WriteLine("Hello, World!");
            //sw.Close();
            //StreamReader sr = new StreamReader(fn);
            //Console.WriteLine(sr.ReadToEnd());
            //sr.Close();
 
 
 
        }
    }
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.01.2013, 12:29
Ответы с готовыми решениями:

Как перекодировать текст из одной кодировки в другую
как перекодировать из неизвестной кодировки в такую чтобы не было непонятных символов?

Помогите перекодировать строку из одной кодировки в другую
Помогите перекодировать стринг из одной кодировки в другую. Получаю по сокетному соединению строку. Она в кодировке Cp1251. Мне надо...

Надо перекодировать все файлы txt в папке с utf в ansi
Дайте плис готовый код если не трудно который перекодирует все файлы 'тхт' в папке с утф в анси с меня на пиво!

2
Master of Orion
Эксперт .NET
 Аватар для Psilon
6102 / 4958 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
03.01.2013, 13:16
C#
1
2
3
4
5
6
7
void SaveToAnotherEncoding(string path, Encoding sourceEncoding, Encoding neededEncoding)
{
   if (!File.Exists(path)) return;
   var s = File.ReadAllLines(path, sourceEncoding);
   File.Move(path, path + ".bkp";
   File.WriteAllLines(path, s, neededEncoding)
}
Пример использования:
C#
1
SaveToAnotherEncoding ("C:\\projects\\123.txt", Encoding.Default, Encoding.Unicode);
Получает на вход полный путь до файла, исходную кодировку и кодировку, в которую нужно сохранить. После этого выполняет соответствующие действия.
2
432 / 433 / 93
Регистрация: 16.07.2012
Сообщений: 886
03.01.2013, 14:03
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
static void Main(string[] args)
{
    var dirName = @"D:\Test";
    var inEncodingName = "KOI8-R";
    var outEncodingName = "UTF-8";
 
    var inEncoding = Encoding.GetEncoding(inEncodingName);
    var outEncoding = Encoding.GetEncoding(outEncodingName);
 
    foreach (var fileName in Directory.GetFiles(dirName))
    {
        File.Copy(fileName, fileName + ".bkp");
        var text = File.ReadAllText(fileName, inEncoding);        
        File.WriteAllText(fileName, text, outEncoding);
    }
}
Разумеется, названия папки и входной/выходной кодировок можно (и нужно) не в программе жестко задавать, а спрашивать скажем у пользователя через консоль или передавать в качестве аргументов при запуске программы.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.01.2013, 14:03
Помогаю со студенческими работами здесь

Текстовые файлы. Подсчитать, сколько слов начинается с указанной буквы
Даны файл, содержащий текст на русском языке, и некоторая буква. Подсчитать, сколько слов начинается с указанной буквы

Как удалить все файлы в указанной папке ?
Зная путь к папке, требуется максимально просто и надежно удалить все файлы в этой папке программно. Считаем, что в этой папке нет...

Обработка ошибки (Try). Существуют ли файлы в указанной папке
Всем доброе время суток. При нажатии Button1 выбираем папку с файлами, если есть файлы идём дальше, если нет файлов то выскакивает...

Распаковать определенные файлы из всех архивов в указанной папке
с помощью 7z из указанной папки распаковать из всех архивов arj и rar все файлы pdf. в архивах могут быть еще архивы, в них так же могут...

Как прочитать последовательно все текстовые файлы лежащие в папке, не зная заранее их имен?
Подскажите плз, как прочитать последовательно все текстовые файлы лежащие в папке, не зная заранее их имен:?


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru