Java-копировать файл в другой каталог с помощью FileUtils и copyFileToDirectory - не работает -?

Я хотел бы скопировать файл из одного каталога в другой с помощью Java и FileUtils классов Apache org commons.

Я написал быструю программу java для тестирования в моей локальной системе. Вот код. Файл существует, но копирование файла в другой каталог не работает. Что я упускаю? Есть ли какой-то неправильный синтаксис?

import org.apache.commons.io.FileUtils;
import java.io.File;

class MoveFile {

    public static void main(String[] args) {
        MoveFile myobj = new MoveFile();
        myobj.moveTheFile();
    }

    public void moveTheFile () {
        try {
            File destDir = new File("C:Folder1temp2");
            File srcFile = new File("C:Folder1tempcard.png");
            FileUtils.copyFileToDirectory(srcFile, destDir);
        } catch(Exception e) {
        }
    }

}

3 ответов


Реплицировал вашу ошибку, и она терпит неудачу только тогда, когда у программы нет разрешения на запись в папку назначения. Даже улавливание throwable и печать stacktrace не показывает никакой информации, и метод довольно тихий... если папка не существует, метод создает ее так, что игнорирует эту возможную коррекцию.

Проверьте разрешения на запись в папке назначения


- Это никогда не хорошая идея, чтобы не глотать исключения. Сделайте e.printstacktrace() в свой механизм обработки исключений для получения дополнительной информации. Поскольку вы не указали никакой другой информации, первое, что приходит на ум, это то, что если вы используете Windows vista или более позднюю версию, обычно он попросит у вас согласия администратора при размещении элементов непосредственно в вашем


Do

destDir.mkdirs();

или

FileUtils.forceMkdir(destDir);

для создания каталога temp2 первый.