Использование файла для создания каталога, который содержит периоды - PullRequest
0 голосов
/ 03 ноября 2010
File testDir = new File("C:\temp\test");
testDir.createNewFile();

Насколько я понимаю, приведенное выше создаст каталог с именем test в каталоге c: \ temp

File testDir = new File("C:\temp\test.dir");
testDir.createNewFile();

Насколько я понимаю, приведенное выше создаст файл с именем test.dir в каталоге c: \ temp

Что мне делать с приведенным выше кодом, если я хочу, чтобы test.dir действительно был каталогом * * 1013

Ответы [ 3 ]

8 голосов
/ 03 ноября 2010

Нет, первый создаст обычный файл - в конце концов, это то, что вы просили его сделать:

Атомно создает новый пустой файл с именем по этому абстрактному пути, если и только еслифайл с таким именем еще не существует.Проверка существования файла и создание файла, если он не существует, - это единая операция, которая является атомарной по отношению ко всем другим действиям файловой системы, которые могут повлиять на файл.

Ничего тамговорит, что создаст каталог .Вы можете избежать обратной косой черты или попытаться найти C:<tab>emp<tab>est

Если вы хотите создать каталог, используйте File.mkdir или File.mkdirs().Вам по-прежнему нужно экранировать обратную косую черту:

File testDir = new File("C:\\temp\\test.dir");
bool created = testDir.mkdir();

(используйте mkdirs также для создания родительских каталогов.) Возвращаемое значение указывает, действительно ли он создал каталог.

2 голосов
/ 03 ноября 2010

Это не правда.

File.createFile() создаст файл.

File.mkdir() создает каталог.

http://download.oracle.com/javase/6/docs/api/java/io/File.html

1 голос
/ 03 ноября 2010
File testDir = new File("C:\temp\test");
testDir.createNewFile();

Насколько я понимаю, приведенное выше создаст каталог с именем test в каталоге c: \ temp

Неправильно - будет создан файл с именем "test".Файлы не имеют с расширением имени файла.

Чтобы создать каталог:

testDir.mkdir();

Кстати, этот вопрослегче всего и быстро ответить, посмотрев на API документ .Сделайте себе одолжение и познакомьтесь с ним.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...