У меня есть папка, содержащая шесть подпапок. Щелчок правой кнопкой мыши на фоне Finder и нажатие «Очистить по имени» сортирует их в порядке «1.0», «1.5», «1.6», «1.25», «1.56» и «2.0». Это довольно раздражает, потому что это не в каком-либо лексикографическом порядке (как я ожидал) и не в возрастающем числовом порядке, поэтому всегда требуется время, чтобы найти нужную подпапку, которую я хочу. В каком порядке «Очистка по имени» сортирует файлы?
ОС Х Йосемити v10.10.5
При выборе Очистить по имени элементы сортируются в алфавитно-цифровом порядке 1 .
Используя ваш пример, вы на самом деле ошибаетесь, говоря, что элементы не перечислены в каком-то порядке возрастания. Приведенный вами порядок:
1.0, 1.5, 1.6, 1.25, 1.56, and 2.0.
Однако 4-е и 5-е значения выше можно интерпретировать как одну точку двадцать пять и одну точку пятьдесят шесть. Итак, 25 больше 6, 56 больше 25 и так далее.
Для сравнения, MS Windows делает то же самое.
Итак, почему это происходит?
Так же, как базы данных и электронные таблицы, большинство операционных систем используют строки для хранения данных, в данном случае имен файлов. Обычно это работает очень хорошо, но в таких примерах, как ваш, это нелогично, и поэтому многие люди в конечном итоге используют соглашения об именах, которые добавляют нули к имени файла (например, вместо этого 1.5
) 1.50
.
Недавно мне пришлось настроить рабочий процесс для организации, которая собиралась выпускать анимацию каждую среду в течение следующих трех лет. Они хотели, чтобы их файлы назывались NewsImage1
, NewsImage2
и т. д. Мне пришлось объяснять им, что это должно быть NewsImage001
, NewsImage002
и так далее, чтобы к тому времени, когда они были закончены, анимации все еще были перечислены в порядке от NewsImage001
до NewsImage156
. (Если бы это зависело от меня, в именах файлов использовалась бы схема датирования, такая как NewsImage201701 и т. д., но, увы, это был не мой выбор).
Также известно, что эта сортировка вызывает проблемы в определенных отраслях, но, насколько мне известно, единственным обходным путем в macOS является добавление нулей к именам файлов, как я описал выше. Раньше в Windows вы могли вручную редактировать раздел реестра, но я не уверен, что это все еще возможно.
Что бы это ни стоило, я всегда думал, что это должно быть где-то в Системных настройках, но я подозреваю, что это не предусмотрено для целей совместимости.
1 Под буквенно-цифровым я подразумеваю комбинацию буквенных (латинских) символов и цифровых (арабских) цифр, которая также учитывает символы (например, знаки препинания, математические знаки и т. д.). Таким образом, упорядочение работает на основе символов/специальных символов, за которыми следуют цифры по порядку, а затем буквы по порядку. Я не помню порядок сортировки специальных символов, но для чисел все, что после десятичной точки, является целым числом, а не дробью. Под этим я подразумеваю, что 1,1 ниже, чем 1,2, однако 1,15 выше, чем 1,2, потому что «15» в 1,15 воспринимается как пятнадцать, а «2» в 1,2 рассматривается как два (а не как двадцать).
тпаркер
мономет
тпаркер