Page 2 of 2

NameEditor — Пакетное переименование файлов и каталогов

Posted: Thu 26 Oct, 2017 06:27
by 2useven10

Latest post of the previous page:

Предположительно по косвенным уликам:
1) Файлы с кирилицей в имени Drag'n drop-ом перетащили на Linux.
Там, видимо, имена остались как были?
2) Перетащили файлы обратно.
Имена получились кракозябами?
3) При помощи NameEditor вы пытаетесь их переименовать.
С этого начинаются несколько ваших историй в разных темах на этом форуме?

Поправьте, если что-то не так...

NameEditor — Пакетное переименование файлов и каталогов

Posted: Thu 26 Oct, 2017 06:43
by Rododendron
Не совсем так. Мне не удалось воспроизвести то, что меняет кодировку. Однозначно это VmWare, но я попробовал поперетаскивать, не получилось. Я точно не помню все свои действия, т.к. крякозябы я заметил не сразу. Но это и не по теме. Вопрос то был в том, как в Фаре поменять кодировку в именах файлов. Я Фар последний раз запускал еще когда он платным был, так что интерес больше спортивный, чем насущный (у меня файлы с норм кодировкой были в архиве).

NameEditor — Пакетное переименование файлов и каталогов

Posted: Thu 26 Oct, 2017 09:10
by 2useven10
Тоже из 'спортивного интереса'.
Если файлы с кракозябными именами сохранились...
Можете выполнить команду в каталоге с этими файлами: cmd /u /c dir > files.txt
и прислать полученный файл files.txt?
По крайней мере будет ясно что надо было перекодировать.

NameEditor — Пакетное переименование файлов и каталогов

Posted: Thu 26 Oct, 2017 11:37
by Rododendron
Архиватор портил кодировку, а не WmVare. Кракозябы уже на Виртуальном Линуксе появляются после разархивирования zip-архива.
Приложил файл с кракозябами.

NameEditor — Пакетное переименование файлов и каталогов

Posted: Thu 26 Oct, 2017 12:05
by 2useven10
Всё правильно.
Кривой юникод - 866.
Перекодировка не работает нормально, потому что ни одна нормальная кодировка здесь не годится.
Сначала надо избавиться от лишнего второго байта (0x00) в каждом символе, после этого
получается текст в кодировке 866 и можно воспользоваться 'нормальным' перекодированием.
Для избавления от нуля годится перекодирование в Latin1, поскольку для этой кодировки
перевод в юникод и обратно проходит как раз добавлением/удалением нулевого байта.

NameEditor — Пакетное переименование файлов и каталогов

Posted: Thu 26 Oct, 2017 12:16
by John Doe
2useven10 wrote: Thu 26 Oct, 2017 12:05Перекодировка не работает нормально, потому что ни одна нормальная кодировка здесь не годится.
Имена файлов в архиве были записаны в 866, без указания кодировки. При распаковке на линуксе архиватор записал их в ISO 8859. Не может такого быть?
2useven10 wrote: Thu 26 Oct, 2017 12:05Для избавления от нуля годится перекодирование в Latin1
Я не уловил, есть более прямой способ, чем тот, которым в итоге воспользовались?

NameEditor — Пакетное переименование файлов и каталогов

Posted: Tue 07 Nov, 2017 10:58
by 2useven10
John Doe, способ прямой, но слишком много ручной работы.
макрос на который я ссылался был почти готов для такой перекодировки.
Я его немного поправил там, теперь совсем готов.
1) должен работать существенно быстрее
2) должен распознавать кривой юникод(1251) и (866)
3) позволяет исправлять выделенный текст в редакторе строке редактирования диалога и комстроке.

NameEditor — Пакетное переименование файлов и каталогов

Posted: Mon 06 May, 2019 21:07
by Piton812
Подскажите по какому принципу писать шаблоны пакетного редактирования? к примеру если есть 100 файлов которые нужно переименовать так, чтобы перед именем каждого файла выставлялся порядковый номер (от одного до ста соответственно)? спасибо