/
Shalva
/
Lab4_DataPipeline
Обзор
Документация
Войти
/
Shalva
/
Lab4_DataPipeline
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/main/java/models/InputArgs.java
46 строк
2 KB
Kvaratskheliia Shalva
Исходный код к проекту Lab4_DataPipeline
14 июн 2026, 18:57
14 июн 2026, 18:57
ac72959
Код
Авторство
О чём код?
package models; public class InputArgs { private String inputFileName; private String outputFileName; private int shiftK; public InputArgs(String[] args) { if (args == null || args.length < 3) { throw new IllegalArgumentException( "Неверный формат аргументов!\nИспользование: java -jar app.jar -i <входной_файл> [-o <выходной_файл>] <сдвиг_k>" ); } for (int i = 0; i < args.length - 1; i++) { if ("-i".equals(args[i])) { if (i + 1 < args.length - 1) { this.inputFileName = args[++i]; } else { throw new IllegalArgumentException("Ошибка: После флага -i должно идти имя файла."); } } else if ("-o".equals(args[i])) { if (i + 1 < args.length - 1) { this.outputFileName = args[++i]; } else { throw new IllegalArgumentException("Ошибка: После флага -o должно идти имя файла."); } } } if (this.inputFileName == null) { throw new IllegalArgumentException("Ошибка: Обязательный параметр -i (входной файл) отсутствует."); } try { this.shiftK = Integer.parseInt(args[args.length - 1].trim()); } catch (NumberFormatException e) { throw new IllegalArgumentException("Ошибка: Последний аргумент (сдвиг k) должен быть целым числом."); } } public String getInputFileName() { return inputFileName; } public String getOutputFileName() { return outputFileName; } public boolean hasOutputFile() { return outputFileName != null; } public int getShiftK() { return shiftK; } }