[TC] Re[5]: Предупреждение о слишком длинном целевом пути
Доброго времени суток всем!
Grolin в письме от 27.04.2021; 8:48 пишет:
G> ну во первых я не утверждал, а рассматривал как предположение,
Оно не может рассматриваться даже, как предположение, ибо увеличением размера
колонки мы увеличиваем только видимую область. Ограничения файловой системы мы
отменить не можем.
G> Итак, с чего началась дискуссия, человек сказал, что на одном диске
G> этот путь всё OK, а на другом выдаёт ошибку.
1. Пути на первом диске могут быть короче, например, человек копирует папку
e:music со сменного диска в папку c:\users\василий пупкин\music. Догадайтесь,
где путь будет длиннее?
2. Внешний диск может быть отформатирован в fat32, который не поддерживает
юникод и сохраняет кириллические имена в системной кодировке windows-1251. При
копировании на том ntfs имена файлов будут преобразованы в юникод, то есть
каждый символ, занимавший 1 байт, станет занимать 2 байта. Например, имя файла
песенка.mp3 на томе fat и на томе ntfs будет "весить" совершенно по-разному.
3. При копировании с внешних носителей и из Интернета, система может добавлять
к файлам поток Zone.Identifier, в котором указывает источник файла, то есть
место, откуда он скопирован. fat не имеет потоков, а вот ntfs активно ими
пользуется и то, что вы их не видете, вовсе не значит, что их нет. А теперь
посчитайте количество символов у двух имён файлов:
e:\music\iloveyou.mp3
d:\music\iloveyou.mp3:Zone.Identifier
То, что написано во втором примере после двоеточия, это и есть имя файлового
потока. Как не трудно догадаться, на него тоже распространяются ограничения,
ведь это такой же путь, только вы его не видите.
Если примеров для вас недостаточно, я охотно могу продолжить их приводить до
тех пор, пока вы не поймёте, что изменение размера колонок не приводит к
снятию, или увеличению ограничений файловой системы. Надеюсь на понимание и на
то, что мои примеры были не слишком замудрёные.