Чому тильда ('~') переходить до цифр у іменах файлів NTFS?


0

У мене є структура папок, в якій імена папок починаються з цифр. Через деякий час деякі папки (або, скоріше, інформація, яку вони містять) стають "архівованими", і я не хочу, щоб вони візуально заважали простору батьківської папки.

Моє рішення поки перейменовувати папки (так само, як не нав'язливо), щоб "архівовані" папки переходили до кінця списку. Я вирішив піти з додаванням символу тильди ( ~ ) до початку імен папок, очікуючи побачити ~ -префіксовані папки, розташовані під номерами префіксів при сортуванні за назвою у порядку зростання.

Але, замість щось подібне

parent folder:
  123
  456
  789
  ~012

Я бачу це:

parent folder:
  ~012
  123
  456
  789  

Це дивно, враховуючи, що NTFS використовує Unicode для символів імені файлу, а значення Unicode у тильді вище, ніж значення [0-9] символи, які слід помістити в лексикографічний порядок.

У чому причина поведінки, яку я спостерігаю, і як її робити ~ -префіксовані папки будуть відсортовані за номерами з префіксом чисел?

Редагувати: Для відображення вмісту папки я в основному використовую FAR Manager. Але поки її сортування за назвою виглядає так само, як у Windows Explorer. Таким чином, рішення, яке працює для Windows Explorer, також буде працювати для FAR Manager.


Як саме ви показуєте назви файлів? Будь ласка редагувати питання і бути конкретними.
DavidPostill

Сортування в Windows не завжди має числове значення символів. У Windows Explorer звичайні символи пунктуації передують алфавіту. Це включає тильду.
LMiller7

@ LMiller7 Чи є формальний опис впорядкування символів в іменах файлів Windows? Так що я міг би підібрати символ, який фактично передуватиме числові цифри.
Semisonic

1
Новіші Windows також використовує певний "розумний" виявлення нумерації. Це, в основному, тому, що ви не отримаєте послідовності, такі як 1, 10, 11, 12, 2, 3, 4, 5, 6, 7, 8, 9, але також виявляєте незначні відхилення символів і регулює послідовність, щоб вона відповідала чисел, незважаючи на будь-яке упорядкування таблиці символів.
BeowulfNode42

@Semisonic MSDN стверджує, що символи пунктуації передують алфавітному тексту. Які вони, я не знаю. Є лише кілька символів ASCII над 'z', і я підозрюю, що вони ведуть себе так само. Є багато символів у розширеному діапазоні ASCII вище 160, які б працювали. Я впевнений, що ви можете знайти той, який підходить і не надто складно ввійти.
LMiller7
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.