2010-03-16 5 views
2

Je suis en train de créer un fichier en utilisantComment fonctionne la création de fichiers en Java

newfile = new File ("myFile");

Cependant, aucun fichier appelé "myFile" n'est créé. Ceci est dans un projet d'application Web, c'est-à-dire un formulaire approprié pour être traité comme un WAR mais je l'appelle comme faisant partie d'une méthode principale (juste pour voir comment cela fonctionne).

Comment est-ce que je peux faire en sorte qu'un nouveau fichier soit créé à un endroit par rapport à celui en cours? Je n'ai pas besoin de mettre un chemin absolu.

EDIT:

newFile.createFile();

ne semble pas fonctionner:

Voici le code entier:

import java.io.File; 
import java.io.IOException; 

public class Tester { 

public static void main(String[] args) throws IOException{ 
    Tester test = new Tester(); 
    test.makeFile(); 
} 

public void makeFile() throws IOException{ 
    File newFile = new File("myFile"); 
    newFile.createNewFile(); 
    } 
} 
+0

Où dois-je attendre le nouveau fichier à créer - je pense que ce soit dans le même dossier que la classe qu'il est appelé de. – Ankur

+0

Non, c'est dans le répertoire de travail actuel. Utilisez 'file.getAbsolutePath()' pour obtenir le chemin complet. – ZeissS

+0

Notez que la classe File représente une représentation logique d'un fichier et non une représentation physique sur le disque. Vous aurez besoin d'utiliser la méthode createNewFile() pour faire la création physique, dans de nombreuses réponses. –

Répondre

4

En réponse à votre commentaire. Le fichier sera créé dans le répertoire courant du processus, sauf spécification contraire.

// new file in current directory 
File f = new File("yourFile"); 
f.createNewFile(); 
System.out.println("Path:" + f.getAbsolutePath()); 

Pour créer dans un répertoire de votre choix:

File f = new File("c:\\yourDirectory","yourFile"); 
f.createNewFile(); 
System.out.println("Path:" + f.getAbsolutePath()); 
2

vous pouvez utiliser newFile.createNewFile();

+0

Vous êtes rapide! :) LOL – Kiril

+0

Juste chanceux ..;) – kukudas

+0

+1 pour être chanceux et la bonne réponse bien sûr! :) – Kiril

2

newFile.createNewFile();

Questions connexes