Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.11.11;
Скачать: [xml.tar.bz2];

Вниз

Как узнать в какой кодировке находиться файл....   Найти похожие ветки 

 
Anonimus   (2002-10-30 14:18) [0]

Драсти..!!!!

Подскажите пожалуйста как мне узнать в каой кодировки находиться файл..?????
Файл текстовый....

Заранее спасибо...


 
Smithson   (2002-10-30 14:40) [1]

Очень просто. Я тут уже где-то давал алгоритм. Идея в следующем - для каждой кодировки составить таблицу ПАР символов. Взять некий большой файл, записать его в разных кодировках и посчитать такие таблицы для разных кодировок (плюс сохранить количество символов в файле всего).
структура типа

TCharSetTable = record
N: Integer; // число символов
CharSet: Array["а".."я","а".."я"] of Integer;
// Таблица пар
end;


Далее для своего файла считываешь байт 300-500 (я делал 500, точность выше), считаешь для него аналогичную таблицу. И сравниваешь эти таблицы (эталонные и для файла), учитывая количество символов (я использовал их как делители для элементов таблицы). Для неправильных кодировок расхождение с эталоном будет разительное, для правильной - небольшое.


 
Opuhshii   (2002-10-30 14:43) [2]

100% - никак,..
с какой то вероятностью можно утверждать по наличию отсутствия не присущих кодировке символов,.. пример (win1251/cp866) в файле последеней не должно быть байту $FF,. хотя может и быть,.. ;)



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.11.11;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.01 c
3-33908
VikOss
2002-10-23 10:01
2002.11.11
Глюк в базе


14-34180
Дремучий
2002-10-21 15:28
2002.11.11
сложная ли задача - понять закономерность?


1-34052
Alex
2002-10-30 21:23
2002.11.11
Координатная система TImage


14-34197
vopros
2002-10-21 17:29
2002.11.11
С сканером, кто плотно работал?


8-34125
Sniffer
2002-07-17 10:56
2002.11.11
И ещё раз про OpenGL





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский