"Позволяют нам Сборка, Компилятор" является потрясающим, но это немного устарело. (Я не говорю, что это делает его даже немного менее допустимым.)
Или выезд СЛЕНГ . Это подобно для "Разрешения нам Сборка Компилятор", но является намного лучшим ресурсом специально для новичков. Это идет с учебным руководством PDF, которое проявляет 7 подходов шага при обучении Вам компилятор. Добавление quora ссылки, поскольку это имеет ссылки на все различные порты СЛЕНГА, в C++, Java и JS, также интерпретаторах в Python и Java, первоначально записанное использование C# и платформа.NET.
Из вашего вопроса неясно, но поскольку вы планируете принимать пути из веб-формы (?), Вам, вероятно, следует блокировать попытки переименования определенных вещей; например, «C: \ Program Files». Это означает, что вам необходимо канонизировать пути, чтобы исключить "." и ".." перед проверкой доступа.
Учитывая это, я бы не стал пытаться удалять недопустимые символы. Вместо этого я бы использовал «new File (str) .getCanonicalFile ()» для создания канонических путей, затем проверил, соответствуют ли они вашим ограничениям песочницы, и, наконец, использовал бы «File.exists ()», «File.isFile ()» и т. д., чтобы убедиться, что источник и место назначения кошерные и не являются одним и тем же объектом файловой системы. Я бы имел дело с недопустимыми символами, пытаясь выполнять операции и перехватывая исключения.