Есть в моей работе такая тривиальная задача, как открыть в Экселе экспортированный из другой программы CSV-файл. Для тех кто не знает поясню, что CSV — это просто текст, где поля разделены запятой или иным оговоренным символом.
Так вот. Казалось бы: причем здесь искусственный разум? Но простор для творчества есть всегда. Поначалу я не обращал внимания на происходящее, но потом меня это начало порядком доставать.
Не буду тянуть, сразу покажу картинку:
Ведь всем сразу в глаза бросилось поле со списком «Турецкая (Windows)»?
В этом-то и интрига. Вот почему турецкая? Ведь никто никогда не выбирал на этом компьютере турецкую кодировку! Автодетекшн сработал? Плохо обстоит у экселя дело с турецким языком… Впрочем, как и с русским. Ну чтож, давайте пролистаем список.
Нажимаем на стрелочку и… видим перед собой окошко прокрутки из трех строк, со скроллбаром, уходящим в бесконечность как вверх, так и вниз. Более сотни кодировок, которые надо пролистать и найти нужную. И никакие попытки нажать соответствующую букву или набрать номер кодировки ни к чему не приводят.
Листаем список. Перед глазами бегут бесконечные эстонские, хорватские, китайские традиционные, китайские упрощенные, японские, корейские, а также и такие, о каких я вообще никогда не слышал, и даже не представляю, к какому народу такое может относиться: ория, малаялам, панджаби, деванагари, телугу…. что это, вообще, за слова такие?
А самое замечательное свойство этого списка заключается в том, что кодировки идут не по коду и не по алфавиту.
Второе замечательное свойство — случайность выборки предполагаемой кодировки. Турецкая по умолчанию — это еще цветочки. Может быть и вьетнамская или японская. Или центральноевропейская. Бывают и попадания. Или почти попадания. Надо же! Кириллица КОИ-8! Почти! Еще пара строчек — и вот наша вожделенная 1251!
Ну, а по пятницам, приходящимся на 13 число, в полнолуние случается самое удивительное. Я открываю очередной файл и вижу там «1251: Кириллица (Windows)». Повезло! Значит весь день будет сопутствовать удача!
Но прогресс не стоит на месте! Вспомним о том, что всего какие-то 5-7 лет понадобилось мелкософту, чтобы сделать браузер с табами. В экселе тоже результат напряженной многолетней работы множества программистов налицо:
Это скриншот уже из 2010 экселя. Видите? Видите, они сделали это! Они…
Нет, они не упорядочили кодировки по алфавиту или номеру. Нет, ну что вы! Нет, они не сделали возможность быстрого поиска кодировки в списке. Это слишком. Это будет в следующей версии, в 2015 году.
Но они расширили выпадающий список с 3 до целых 6 строк! Браво!
Теперь листать бесконечный перечень кодировок стало в два раза удобнее!
что за файл у тебя?
я никогда с такой проблемой не сталкивался
хотя может потому, что редко использую это, но бывает.
Ну обычный CSV, разделитель либо «;», либо «|».
В файле перечни из большого количества числовых и текстовых (на русском) полей. Ничего особенного.