Существует ли межплатформенный метод Java для удаления имени файла специальные символы?

"Позволяют нам Сборка, Компилятор" является потрясающим, но это немного устарело. (Я не говорю, что это делает его даже немного менее допустимым.)

Или выезд СЛЕНГ . Это подобно для "Разрешения нам Сборка Компилятор", но является намного лучшим ресурсом специально для новичков. Это идет с учебным руководством PDF, которое проявляет 7 подходов шага при обучении Вам компилятор. Добавление quora ссылки, поскольку это имеет ссылки на все различные порты СЛЕНГА, в C++, Java и JS, также интерпретаторах в Python и Java, первоначально записанное использование C# и платформа.NET.

58
задан Ben S 20 July 2009 в 18:44
поделиться

1 ответ

Из вашего вопроса неясно, но поскольку вы планируете принимать пути из веб-формы (?), Вам, вероятно, следует блокировать попытки переименования определенных вещей; например, «C: \ Program Files». Это означает, что вам необходимо канонизировать пути, чтобы исключить "." и ".." перед проверкой доступа.

Учитывая это, я бы не стал пытаться удалять недопустимые символы. Вместо этого я бы использовал «new File (str) .getCanonicalFile ()» для создания канонических путей, затем проверил, соответствуют ли они вашим ограничениям песочницы, и, наконец, использовал бы «File.exists ()», «File.isFile ()» и т. д., чтобы убедиться, что источник и место назначения кошерные и не являются одним и тем же объектом файловой системы. Я бы имел дело с недопустимыми символами, пытаясь выполнять операции и перехватывая исключения.

5
ответ дан 24 November 2019 в 19:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: