2012-04-22 4 views
3

Я хочу создать файл, но приведенный ниже код не создает никакого файла.создание файла

package InputOutput; 

import java.io.*; 

public class FinalProject{ 

    private File f; 

    public File createFile() throws IOException{ 
     f = new File("E:\\Programming\\Class files\\practice\\src\\InputOutput\\helpSystem.txt"); 
     return f; 
    } 

    public static void main(String[] args) throws IOException{ 
     FinalProject fp = new FinalProject(); 
     fp.createFile(); 
    } 
} 

ответ

4

В Java File представляет собой имя пути к файлу или каталогу, а не для записи файла потока. Если вам нужно создать файл, вызовите createNewFile на File объекта:

try { 
    f.createNewFile(); 
} catch (IOException ex) { 
    // Cannot create new file 
} 
+0

Я пробовал свой код для создания файла. Предполагается, что это «fp.createFile(). CreateNewFile();» ?? или что-то вроде «fp.createNewFile()»? –

+1

См. Edit ... –

+0

@ nick-s 'createNewFile' - это метод в' File'. Поскольку метод 'createNewFile' возвращает' File', вы можете называть 'createNewFile'. Вы также можете использовать переменную 'f', которую устанавливает ваш метод' createFile() '. Наконец, вы можете добавить вызов 'createNewFile()' прямо в свой метод 'createFile()'. – dasblinkenlight

2

Добавьте следующее в вашем методе CreateFile:

if(!f.exists()) { 
    f.createNewFile(); 
} 
+0

'createNewFile()' * ".. создает новый пустой файл с именем этого абстрактного пути, если и **, только если файл с этим именем еще не существует **." * (Проверка 'if' redundant.) –

2

Это правильный код для создания файла.

public File createFile() throws IOException{ 
f = new File("E:\\Programming\\Class files\\practice\\src\\InputOutput\\helpSystem.txt"); 
if(!f.exists()) { 
f.createNewFile(); 
} 
return f; 
} 
0

Вызвать метод createNewFile который создает новый файл, если файл не существует Here ссылка на инструкцию.

Надеюсь, это помогло!