Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Перекодировка русского текста DOS+ANSI в ANSI [D7, XP, 2003]


Страницы:   1 2

allrussia ©   (2010-03-03 08:48:00) 

Есть данные с  русскими символами DOS и ANSI
например:

‘ЇЁб®Є Ё­вҐа䥩ᮢ
Минипорт


Данные динамически меняются

Если применять к данным функцию OEMtoANSI (и подобные)
то ANSI-символы портятся, а DOS-символы конвертируются нормально.

т.е. получается в данном примере что -то типа

Список интерфейсов
¦шэшяюЁЄ


а нужно

Список интерфейсов
Минипорт


Что же делать? (с) Ч.

Есть идея переконвертировать весь текст в ASCii -символы
типа #156
а затем в зависимости от символа конвертировать в ANSI
но как реализовать не знаю
Может кто подскажет. Спасибо.
p.s.перерыл все факи.


Anatoly Podgoretsky   (2010-03-03 10:09:00) [21]

Методом частотного анализа, при известном языке это частично возможно.


12   (2010-03-03 10:08:00) [22]

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

наверное, нужен словарь
Искать результат слов в словаре. Если есть - правильно кодировку применили, нет - другую надо. Опять нет - третью..


allrussia   (2010-03-03 10:02:00) [23]

Не совсем понял, что вы имеете ввиду. Поясните.
Заодно я упрощу задачу.

есть текстовый файл с таким содержанием:

жжжжж  

Вроде все буквы одинаковые, а-н нет. какие то из них в дос кодировке, какие-то в ansi

вот и нужно определить какие из них dos, чтобы применить к ним oemtochar, например

вопрос как определить

т.е. допустим в нашем примере что 1 и 5 буквы в дос кодировке применяем oemtochar к ним - получаем

цжжжцКак узнать какие в дос-кодировке, если они все ожинаковые? :)))))))


Anatoly Podgoretsky   (2010-03-03 08:54:00) [24]

> allrussia  (03.03.2010 08:48:00)  [0]

Операция перекодирования в ASCII обратная по отношению, к сильно устаревшей фунции OEMtoANSI
Синтаксис вызова одинаков.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо