[ Тонкости VB . Кодировки ]
*Уважаемый читатель, мои статьи не несут за собой какого-либо конкретного смысла, а являются лишь выражением моего мнение. В особо крайних случаях мои статьи можно рассматривать как вариант саморекламы (Айзус А. Спекман).
Знааачит так. Сейчас будет фраза из мультов про Бивиса и Батт-хеда: «Дети, никогда не делайте так». Не совсем ясно, при чем здесь эти головопятоточечные? А при том, что то, что я сейчас сотворю в этой статье, делать как бы не положено. Те, кто читает этот журнал долгое время, наверняка меня еще помнят – минимум три статьи, а ссылка на мой сайт до сих пор красуется на левой панели (это при том, что сайт полгода был пустой страницей).
Итак, для начала немного саморекламы (куда сейчас без нее). Была когда-то такая группа – « Ormicon » и была она при сайте, который посещало до 100 человек в день. Может и больше бы посещали, да мало времени уделялось. А потом все засохло (см. мою статью «Как в жизни получается»). Так вот теперь я потихонечку все поднимаю и пишу одну программку, не буду подробно о ней говорить – если вкратце, то это смесь ICQ и Outlook . Так вот – как любая программа, работающая с электронной почтой, она работает с кодировками. Т.к. стандартных средств для работы с KOI -8 r и тому подобными кодовыми таблицами в VB не встроили – я написал небольшой модуль из двух процедур, которые могут работать с внешними файлами таблиц, т.е. вы можете встраивать в свою программу сколько угодно кодировок. К статье прикреплен архивчик с примером. Давайте немного с ним разберемся:
 |
| Вот так выглядело письмо, которое мне прислал FreeTon!k около года назад. |
И ничего бы я не понял, если бы Outlook Express не перекодировал этот текст в удобочитаемую кодировку:
 |
| Текст письма после перекодировки. |
Долго и упорно описывать принцип работы дешифратора я не буду, скажу лишь, что работает все в один цикл. Теперь о кодировках. Все файлы кодовых таблиц должны лежать в папке CODETABL рядом с исполнимым кодом. Они представляют собой простую последовательность символов от 32 до 255. Для того, чтобы изготовить нужную вам таблицу необходимо просто открыть файл standart любым редактором, поддерживающим сохранение в разные кодировки (я использовал UniRead ) и сохранить в нужной вам кодовой таблице. После этого лишь положите файл в папку CODETABL и введите имя кодировки в специальное окошко (видно на скриншоте).
Вот и все. Думаю, мой пример вам поможет, т.к. я ничего подобного и удобного не нашел. По мере написания моей программы я буду делиться с вами своими наработками. В следующих номерах FreeTech мы научимся работать с сетью без использования ActiveX и всем ненавистного Winsock ActiveX Control . А также мы рассмотрим проблему обмена данными между приложениями. Не хотите ждать следующего выпуска FreeTech – заходите на http :// ormicon.forever.kz / .
Удачи вам. Всего доброго.
P.S. Файл с исходниками здесь.
[ Айзус А. Спекман <izus@inbox.ru> ]