Автораспознание кодировки в RichTextBox

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
John_mc
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 112
Зарегистрирован: 15.06.2002 (Сб) 6:18
Откуда: Russia, Новосибирск

Автораспознание кодировки в RichTextBox

Сообщение John_mc » 15.04.2003 (Вт) 12:33

Проблема в общем в следущем:
Я делаю свой блокнот, если через него открывать текстовые файлы в формате Windows, тогда всё нормально, а когда открываешь в формате DOS - тогда появляется абракодабра. Как сделать автораспознание кодировки :?:

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 15.04.2003 (Вт) 13:38

Проблема в том, что в RTB как следует из названия открывается RTF документ. В нем обычно прописано в заголовке какая у него кодировка ;)



А если ты пихаешь туда просто текст, то тут проще у пользователся спросить, что за кодировку он желает использовать.

John_mc
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 112
Зарегистрирован: 15.06.2002 (Сб) 6:18
Откуда: Russia, Новосибирск

Сообщение John_mc » 16.04.2003 (Ср) 10:30

Но всё-же можно это как-нибудь сделать? Я такую фишку видел во многих блокнотах. и Word'е такое есть.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 16.04.2003 (Ср) 11:26

Автораспознавание делается ручками.
А если конкретно, берется фрагмент текста (например, первые 2 тысячи символов) и проводится анализ, символы с каким кодом и в каком процентном отношении встречаются. Точных цифр я не помню, были в каком-то журнале "Компъютерры". Смысл в том, что (например), буква "Р" встречается в 3%, а "А" в 8% и т.п. В кодировке CP1251 у буквы "А" код 192, у буквы "Р" код 208, в кодировке CP866 соответственно 128 и 144. Соответственно, если по результатам твоего анализа символ с кодом 128 встретится 7-8%, а с кодом 144 3-4%, то это, скорее всего, кодировка CP866.
Lasciate ogni speranza, voi ch'entrate.

ASD
Модератор
Модератор
Аватара пользователя
 
Сообщения: 1758
Зарегистрирован: 07.12.2001 (Пт) 21:08
Откуда: Russia

Сообщение ASD » 16.04.2003 (Ср) 11:32

а есть кажись уже готовые алгоритмы. Толи на сайте Кирпичики ВБ толи еще на какомто из наших. Поищи.
Moderator VBStreets
---------------------------


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот, SemrushBot, Yandex-бот и гости: 45

    TopList  
cron