2014-01-04 3 views
-1

У меня проблема. Я хочу переписать txt-файл в другой txt-файл, но с другим кодированием. Я должен выполнить преобразование в Unicode, iso-8859 и windows-1250.Переписать txt-файл в другую кодировку

Я должен написать его на C++. Может кто-нибудь помочь мне с этой темой? Как начать кодирование?

С уважением!

+0

Во-первых, вам нужно найти эти кодировки и настроить таблицы преобразования для них. Затем откройте файл, прочитайте его byte by byte, преобразуйте каждый байт через поиск таблицы и напишите его в выходной файл. – lurker

+0

Какая кодировка имеет файл, созданный в блокноте? – user3025978

ответ

1

Windows отлично подходит для преобразования строк. Прочитайте данные из исходного файла и передайте его в MultiByteToWideChar с указанием исходной кодовой страницы, затем передайте этот вывод в WideCharToMultiByte, указав целевую кодовую страницу и напишите этот вывод в целевой файл.

BTW, следующий вопрос, перед тем, как вы работаете только с Windows. Не помещайте полезную информацию в комментарии.

+0

Привет! Sory для этого (пропустите информацию об ОС). Я пишу это pastebin.com/p5cCtZfx. Когда я открываю выходной файл, notepad ++ показывает мне ANSI как UTF-8 (справа внизу), но когда я конвертирую строку с польскими буквами, она показывает только квадрат на польском месте письма. Во-вторых, он только конвертируется в utf-8? Я не вижу в документации никакой информации об iso-8859 и windows-1250. – user3025978

+0

@ user3025978: Извините, я понятия не имею, что все это значит. «Показать ANSI как UTF-8»? UTF-8 - это 8-битное кодирование Unicode, а ANSI - Американский национальный институт стандартов (который не создал UTF-8). ISO-8859 - это стандарт, который содержит 15 наборов символов. Большинство из них не содержат польских персонажей, BTW. – MSalters

0

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

Это хорошая ссылка, чтобы вы начали Encoding for Programmers.

EDT # 1: Вот еще одна ссылка, которая идет немного более подробно на subject of character encoding in windows. Здесь вы можете найти функции и макросы, которые помогут вам создать приложение.

+0

Привет, спасибо, что ответ. Я напишу его только в WindowsOS. Где можно найти таблицы преобразования? Или как я могу подготовить эту таблицу? – user3025978

 Смежные вопросы

  • Нет связанных вопросов^_^