Я пишу приложение, которое принимает огромное количество текстов в качестве входных данных, которые могут быть в любой кодировке символов, и я хочу сохранить все это в UTF-8. Я не получаю или не могу доверять кодировке символов, которая определяется данными (если есть).
Я некоторое время использовал шрифт библиотеки Pythons для обнаружения исходной кодировки символов http://pypi.python.org/pypi/chardet, но в последнее время столкнулся с некоторыми проблемами, когда я заметил, что это не так, t поддерживает скандинавские кодировки (например, iso-8859-1). И кроме того, для получения результатов требуется огромное количество времени /CPU/mem. ~ 40 секунд для текстового файла размером 2 МБ.
Я попробовал просто использовать стандартный файл Linux
file -bi name.txt
И со всеми моими файлами до сих пор он дает мне 100% результат. И это с ~ 0,1 с для файла размером 2 МБ. И он также поддерживает кодировки скандинавских символов.
Итак, я думаю, что преимущества использования файла ясны. Каковы недостатки? Я что-то пропустил?