2015-07-10 5 views
-1

У меня есть этот метод, где я пытаюсь создать вспомогательный каталог в папке станций. Все необходимые каталоги создаются до вызова этого метода. Все папки имеют нормальные позиции и не скрыты.Java mkdir не будет работать

private void moveFiles(){ 
    String[] dates = getDates(); 
    //File oldFile = new File("/stations/CurrentFiles/"); 
    File newFile = new File("/stations/" + dates[0].replaceAll("/", "-") + "-" + dates[1].replaceAll("/", "-") + "_" + System.currentTimeMillis() + "/"); 
    if(!newFile.exists()){ 
     if(newFile.mkdir()){ 
      System.out.println(newFile.isHidden()); 
     }else{ 
      System.out.println("error"); 
      System.out.println(newFile.isHidden()); 
     } 
    } 
} 

Не понимаю, что могло бы заставить его не создавать каталог.

+3

Не работает как? Какая ошибка (если есть) вы получаете? – azurefrog

+0

Ошибка в том, что каталог не создается. Я использовал тот же формат, который я использовал для создания каталога станции, и он работает на 100% тестов, которые я сделал. – Jay

+2

Существует ли родительский каталог? Вы попробовали «mkdirs» вместо этого? (И есть/station/действительно каталог в корне вашей файловой системы?) –

ответ

0

Я бы уточнил, что у вас есть права на запись для этого каталога; попробуйте newFile.canWrite().

+0

Вставить System.out.println (newFile.canWrite()); под печатью ошибки, и она показала ложную. Как я могу поменять это, если это возможно. – Jay

+0

Если это в вашей собственной системе, попробуйте запустить вашу программу как root/administrator. Если он находится в системе, где у вас нет доступа к суперпользователю, подумайте о записи в другой каталог. –

+0

Каталог станции, который я сделал для размещения всех файлов, необходимых для программы, поэтому мне нужно, если возможно, чтобы все оставалось в этой папке. – Jay

Смежные вопросы