Open Suntrie opened 6 years ago
Всё ещё актуально.
Примеры некорректных ситуаций:
Посмотреть, как реализовать парсер аргументов КС и частично обезапасить себя от ситуаций такого рода можно, например, здесь: https://martin-thoma.com/how-to-parse-command-line-arguments-in-java/
Upd. Всё ещё актуально. Зачем нужно парсить аргументы, чтобы никогда не использовать возвращаемые значения - subDirectory, fileName, directory
? В текущем варианте реализации, кроме всего, будет, например, некорректно обрабатываться ситуация вызова find -d dir
- здесь dir будет выступать и как директория для поиска, и как искомый файл/ директория.
Upd. Всё ещё очень актуально.
-
Для решения рутинных задач принято использовать библиотеки – это, обычно, быстрее, и несколько сложнее ошибиться в разрабатываемом коде. Для парсинга можно использовать, например, org.koshuke.args4j, прописав в pom-файле соответствующую зависимость. Это позволяет избежать и ручной реализации обработки корректности формата входной строки. Upd. Still ongoing. Сейчас на некоторых входах программа будет просто падать (например, если не задана директория поиска, но задан ключ), и будет принимать некорректные входы.