Я написал свое исключение, но не могу его выбросить.
Приложение по-прежнему завершает работу и выдает стандартное сообщение об ошибке:
Exception in thread "main" java.nio.file.NoSuchFileException: H:\db_sort\pdfs\test_5_database
at sun.nio.fs.WindowsException.translateToIOException(Unknown Source)
at sun.nio.fs.WindowsException.rethrowAsIOException(Unknown Source)
at sun.nio.fs.WindowsException.rethrowAsIOException(Unknown Source)
at sun.nio.fs.WindowsFileCopy.move(Unknown Source)
at sun.nio.fs.WindowsFileSystemProvider.move(Unknown Source)
at java.nio.file.Files.move(Unknown Source)
at ExceptionTest.filemove(ExceptionTest.java:22)
at ExceptionTest.main(ExceptionTest.java:9)
Приложение должно переместить некоторые файлы, но может быть так, что файл, который необходимо переместить, не существует. Затем программа просто распечатает, что файл не может быть перемещен, и затем программа перейдет к следующему файлу.
Вот фрагмент моего кода, в котором я хочу выбросить исключение. Файл test_5_database не существует. Затем он просто распечатает:
Файл был переименован, перемещен или удален, и эти изменения не синхронизированы с базой данных.
Вот мой код (я не публикую весь свой код, Я просто опубликую свою проблему исключения):
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
public class ExceptionTest {
public static void main(String[] args) throws IOException {
try {
filemove();
System.out.println("The file has been moved!");
}
catch(NoSuchFileException e) {
System.out.println(e.getMessage());
e.printStackTrace();
}
}
private static void filemove() throws IOException, NoSuchFileException{
Files.move(Paths.get("H:/db_sort/pdfs/test_5_database"),Paths.get("H:/db_sort/pdf s/2019-08/test_5_database"));
}
}
class NoSuchFileException extends Exception{
NoSuchFileException(){
super("The file has been moved, renamed or deleted and those changes
are not synchronized with the database");
}
}
Я надеюсь, что кто-то может помочь мне и объяснить, как я могу выдать свое собственное сообщение об ошибке. После отображения сообщения об ошибке приложение продолжит перемещение файлов.
Извините, если я допустил несколько глупых ошибок в своем коде, я совершенно новичок в этой теме. И я не являюсь родным языком английского языка, поэтому прошу прощения за любые грамматические или орфографические ошибки. Я надеюсь, что у вас хороший день.