Я хочу переместить какой-нибудь файл в другое место, используя Java SE 1.6
Итак, у меня есть два файла:
File srcFile, dstFile;
Когда я хочу переместить файл srcFile на место dstFile:
boolean result = srcFile.renameTo(dstFile);
Но там могут возникнуть некоторые ошибки, и результат будет ложным. В этом случае я хочу спросить пользователя, хочет ли он повторить эту операцию. Какой лучший способ сделать это? Я бы использовал здесь оператор goto, но в Java его нет.
В настоящее время я делаю это следующим образом:
boolean retry = false;
do {
if (!srcFile.renameTo(dstFile)) {
// TODO: Error during file replacement
Object[] retryOptions = { "Yes", "Retry" };
replaceFileOption = JOptionPane.showOptionDialog(frame, "There was a error durring moving file" + srcFile.getPath() + ". Skip this file?", "Warning", JOptionPane.DEFAULT_OPTION, JOptionPane.QUESTION_MESSAGE, null,
retryOptions, retryOptions[0]);
if (replaceFileOption == 2)
retry = true;
}
} while (retry);
Есть ли другой способ, который не будет использовать цикл while ()?