Мир цифровой информации
Если вам кажется, что нет ничего проще, чем придумать имя для файла или папки, то скорее всего вы ошибаетесь. Существуют правила из-за которых нельзя назвать файл любым именем как обычный физический предмет. Для начала проясним, что такое имя файла, и как оно используется.
Понятия «путь» и «имя файла»
Очень часто в компьютерной литературе используются термины «путь» и «имя файла» под разными значениями. Обычно под словом «путь» понимают адрес или расположение файла, т. е. диск, папка и подпапки в которых расположен файл. Однако Microsoft и другие считают, что в путь к файлу входит не только его расположение но и само имя файла. А некоторые подразумевают под словом «путь» только имена файла и папок, в которых он расположен, без указания диска. Некоторые пользователи полагают, что «имя файла» не включает расширение. В данной статье расширение всегда является частью имени файла. На примере ниже синим цветом выделен путь к файлу, а красным имя файла.
X:\папка\подпапка\ файл.расширение
Зарезервированные символы и имена
Большинство часто употребляемых символов разрешается использовать в имени файла. Имя файла не должно содержать „ ” (знак больше), „:” (двоеточие), „ «” (двойные кавычки), „ /” (слеш), „ \” (обратный слеш), „ |” (вертикальная черта), „ ?” (вопросительный знак), „ *” (звездочка), а также не может заканчиваться точкой или пробелом. Файлы также нельзя называть зарезервированными именами устройств: CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, и LPT9.
Ограничения на длины имен файлов и путей
Существуют ограничения на длину имени файла и на длину пути. Абсолютное ограничение длины имени файла вместе включая путь к нему равно 260 символам. Этот предел называют термином MAX_PATH. На самом же деле на практике пределы для имен еще меньше из-за ряда других ограничений. Например, каждая строка на конце должна содержать так называемый нулевой символ, который обозначает конец строки. Несмотря на то, что маркер конца строки не отображается, он учитывается как отдельный символ при подсчете длины, а значит остается 259 символов доступных для имени файла и пути к нему. Первые три символа в пути используются для обозначения диска (например, C:\). Это уменьшает предел для имен папок, подпапок и файла до 256 символов.
На имя объекта (папки или файла) наложено ограничение длины 255 символов. Этот предел действителен только, если объект не расположен внутри папки. Так как при расположении объекта внутри папки, сумма длин всех папок в которых он расположен, разделителей и имени объекта ограничена 256 символами, то предел длины самого имени объекта меньше 255 символов.
Почему в названии файлов нельзя использовать некоторые знаки (* / и др.)?
Потому что эти символы являются служебными и если использовать их в названии файлов, у системы возникнут большие проблемы с пониманием того, что вы хотели сказать.
Возьмем пример с обратной косой чертой (\)
Допустим, вы пользователь Windows и вы хотите добавить файл в папку C:\Users\Public\Music
Если ваш файл будет называться melody.mp3, то путь до файла (адрес, по которому компьютер будет искать этот файл, если вы попросите) будет выглядеть как C:\Users\Public\Music\melody.mp3
Это просто и понятно. Но допустим, вы решили назвать файл my\melody.mp3
Путь в такой ситуации выглядел бы как C:Users\Public\Music\my\melody.mp3
Если вы захотите открыть файл, компьютер будет искать папку my внутри папки Music. Естественно, он ее не найдет. Чтобы избежать таких ситуаций, пользователям не разрешается использовать \ в названиях
Прямая косая черта / тоже относится к служебным символам и используется для параметров команд (это редко нужно рядовому пользователю, конечно).
Символ * тоже относится к служебным: при поиске по файлам он используется для обозначения произвольного набора символов. Например, если вам нужно выбрать все текстовые файлы, начинающиеся на A, вы можете указать в поиске такое: A*.txt и получите список всех подходящих файлов. Очевидно, что использование звездочки в названиях создало бы много проблем.
2 5 · Хороший ответ
Как выглядит знак авторского права?
Многие ошибочно полагают, что знак охраны авторского права (знак копирайта) — это латинская буква «С» в окружности. Не совсем так: внешний вид знака охраны авторского права четко определен российским законодательством. Ему посвящена целая статья Гражданского кодекса — 1271, в которой говорится, что этот знак «помещается на каждом экземпляре произведения и состоит из следующих элементов:
- латинской буквы «C» в окружности;
- имени или наименования правообладателя;
- года первого опубликования произведения».
Кроме того, употребление символа регулируется государственным стандартом Российской Федерации ГОСТ Р 7.0.1-2003 «СИБИД. Знак охраны авторского права. Общие требования и правила оформления». Стандарт регулирует форму представления знака на следующих объектах:
- книги и брошюры;
- сериальные издания;
- ноты;
- картографические издания;
- художественные альбомы;
- аудио- и видеоиздания;
- электронные издания.
В соответствии с этим стандартом в знаке копирайта на части составных или производное произведение должен быть указан конкретный объект защиты права:
- пересказ;
- иллюстрации;
- вступительная статья;
- составление;
- перевод на русский (или любой другой) язык.
И тогда знак может приобретать следующий вид: «© Алексеева А.К., перевод на русский язык, гл. 1-2, 2015».
Решение проблемы русских букв в именах файлов / папок и не только. Инструкция с пояснениями для обычных пользователей
Статья рассчитана на обычных людей — неспециалистов, которые даже сейчас в век полной поддержки компьютерами любых языков вплоть до эльфийского всё-таки иногда сталкиваются с непониманием современными программами букв, отличных от основной латиницы
Иногда я с ностальгией и каким-то тёплым трепетом вспоминаю времена, которые, казалось, навсегда канули в лету. Времена, когда при включении компьютер спрашивал дату и время. Времена, когда на одну дискету помещалась операционная система, файловый менеджер и несколько игр, а цветной монитор даже с 16 цветами и соответствующей видеокартой оставался недостижимой мечтой. Характерной чертой вплоть до середины 90-х оставалась невозможность использовать кириллицу в именах файлов, папок, в командах. Да в общем-то нигде, кроме, разве что, содержимого файлов. Там можно было печатать по-русски, но и то это требовало дополнительной настройки и специальной программы.
Я рад, что застал эти времена. Рад, что до сих пор у меня в путях и именах «технических» файлов почти нет кириллических символов. Но сейчас это скорее привычка, чем необходимость. Я уже лет 15 не сталкивался с программами, предназначенными для широкого круга пользователей и не понимающих символы, отличные от основной латиницы и эта статья никогда бы не появилась, если бы не всплеск проектов на блокчейне. Проектов, среди которых встречаются интересные ещё не законченные со своими нюансами, в том числе и таким неприятным.
Установив клиент одного из таких проектов я приготовился исследовать его, тем более, это вознаграждалось и был очень быстро огорчён. Ошибки, как из рога изобилия просили меня связаться с разработчиками почти никогда не объясняя суть ошибки. Хотя в одной конкретной ситуации причина была указана — несовпадение кодировок.
Здесь внимательный читатель найдёт противоречия, т.к. я писал, что почти не использую кириллицу в технических именах и не должен был столкнуться с такой проблемой. Увы, столкнулся именно из-за «почти». Единственной пользовательской папкой с русским именем у меня была папка «Загрузки». Я посчитал это допустимым, т.к. ожидать в 2017 году, что браузер, торрент или другая качалка не поймут по-русски было бы просто смешно. Практика показала, что это далеко не смешно на самом деле. Разработчики ответили мне, что проблема в не латинском имени пользователя. До сих пор думал, что Fainder пишется латиницей, о чём и сообщил разработчику. Далее следовал не особо конструктивный диалог, мне предлагали ручную правку путей в конфигурационных файлах, я не понимал, зачем это делать, т.к. имя пользователя всё-таки на латинице, даже скриншот им отправил, после чего всё таки открыл конфигурационный файл и обнаружил там свои «загрузки». Переименовать папку загрузок просто и я не буду здесь это описывать не из-за простоты, а из-за того, что у вас, дорогие читатели эта папка и так наверняка носит название Downloads, а русское слово вам отображает Windows. Да, она хитрая и показывает ненастоящие названия. Но наверняка есть немало людей, у которых имя пользователя указано по-русски, а его Windows не меняет. Если нажав кнопку Пуск и наведя курсор на свой аватар вы увидите русские буквы, готовьтесь к возможным проблемам, ведь бурное развитие блокчейна будет продолжаться и появления программ с такими ошибками скорее всего не избежать. Не надо пытаться изменить имя пользователя через параметры или панель управления. Это не поможет, так как имя папки останется прежним. Можно создать нового пользователя, а старого себя удалить, но в таком случае вам заново придётся настраивать Windows и все программы так, как будто вы их только что установили, а некоторые программы могут отказаться работать и их нужно будет переустановить. В нижеследующей инструкции будет использован метод, основанный на жёстких и символических ссылках NTFS. Я постараюсь сделать описание подробным и если возникнут вопросы, с удовольствием отвечу на них в комментариях.
Далее непосредственно решение проблемы
Начиная с Windows 2000 professional для обычных пользователей стала доступна файловая система NTFS, с которой профессионалы работали на тот момент уже давно. В ней среди функций, к которым как правило мало описания присутствует возможность для одного файла или папки назначать несколько имён .
Вы не найдёте эту функцию ни в проводнике, ни где-либо ещё в стандартных программах, кроме разве что командной строки, поэтому для удобства нужно будет скачать дополнительную программу, но если вы освоитесь в жёстких и символических ссылках, то сможете не только решить описываемую проблему, но и легко перенести на другой диск папки, которые по-умолчанию не предлагают выбора пути, например огромный массив блоков Etherium или ту же папку «Мои документы», если она у вас достаточно велика. Ведь места на диске C как правило немного.
Есть несколько программ для создания жёстких и символических ссылок. Я лично использую Total commander с нужным плагином, но здесь мы рассмотрим более простую альтернативу — Junction Link Magic . Если же кто-то захочет поэкспериментировать, то может найти самостоятельно другую утилиту. Некоторые из них были освещены в статье на Гигтаймс .
При запуске Junction Link Magic предложит сканировать компьютер на предмет уже существующих жёстких и символических ссылок и точек монтирования. Если согласитесь, то вы увидите, насколько много их уже на вашем компьютере. Да, сама Microsoft пользуется такими обходными манёврами для совместимости со старыми программами
Обратите внимание на кнопку «Remove». Эта кнопка удаляет ссылку. НИКОГДА НЕ УДАЛЯЙТЕ ССЫЛКИ, КОТОРЫЕ СОЗДАЛИ НЕ ЛИЧНО ВЫ — это может привести к серьёзным проблемам в операционной системе.
Нажимаем Create. и открывается диалог создания ссылки
Слева выбираете папку, которая превратиться в ссылку, а справа настоящую папку.
Для каждой ссылки в левом окне создавайте отдельную папку! Не используйте существующие . Указав на папку C:\Пользователи\Вася справа и на вновь созданную папку D:\vasya нажимаем Create и получаем результат — оба пути — это одно и тоже.
Внизу слева есть кнопка New folder, которая создаёт новую папку, но после создания она не отображается в диалоге (возможно это только у меня), поэтому лучше приготовиться заранее и создать нужные папки вручную
На этом всё. Перед экспериментами обязательно создайте точку восстановления системы. Это никогда не повредит.