Консоль:
Выберите операцию:
0 - упаковать файлы в архив
1 - добавить файл в архив
2 - удалить файл из архива
3 - распаковать архив
4 - просмотреть содержимое архива
5 - выход
10
Произошла ошибка. Проверьте введенные данные.
Выберите операцию:
0 - упаковать файлы в архив
1 - добавить файл в архив
2 - удалить файл из архива
3 - распаковать архив
4 - просмотреть содержимое архива
5 - выход
Ментор: Если произойдет любое исключение кроме WrongZipFileException выведи сообщение "Произошла ошибка. Проверьте введенные данные."
И еще заметил такое-при выборе 5(выход) не пишет "До встречи". подскажите почему.
package com.javarush.task.task31.task3110;
//C:\Users\ДмАлИвАн\Desktop\Новая папка\Документ Microsoft Word.zip
//C:\Users\ДмАлИвАн\Desktop\Новая папка\zada4a.txt
//
import com.javarush.task.task31.task3110.command.ExitCommand;
import com.javarush.task.task31.task3110.exception.WrongZipFileException;
import java.io.IOException;
public class Archiver {
public static Operation askOperation() throws IOException{
ConsoleHelper.writeMessage("Выберите операцию:");
ConsoleHelper.writeMessage(Operation.CREATE.ordinal() + " - упаковать файлы в архив");
ConsoleHelper.writeMessage(Operation.ADD.ordinal() + " - добавить файл в архив");
ConsoleHelper.writeMessage(Operation.REMOVE.ordinal() + " - удалить файл из архива");
ConsoleHelper.writeMessage(Operation.EXTRACT.ordinal() + " - распаковать архив");
ConsoleHelper.writeMessage(Operation.CONTENT.ordinal() + " - просмотреть содержимое архива");
ConsoleHelper.writeMessage(Operation.EXIT.ordinal() + " - выход");
return Operation.values()[ConsoleHelper.readInt()];
}
public static void main(String args[]) {
Operation operation;
while (true){
try {
operation = askOperation();
if (operation == Operation.EXIT) {
break;
}
CommandExecutor.execute(operation);
}catch (WrongZipFileException e){
ConsoleHelper.writeMessage("Вы не выбрали файл архива или выбрали неверный файл");
continue;
}catch (Exception e){
ConsoleHelper.writeMessage("Произошла ошибка. Проверьте введенные данные.");
continue;
}
}
}
}