2017-09-29 15 views
-1

J'ai besoin d'aide sérieuse avec des concepts. J'ai donné le contexte de fond de la classe, en particulier ceci:Utilise la classe File en Java pour créer un fichier?

J'ai juste besoin de comprendre le but de cette classe? Puis-je créer un fichier texte (ou tout autre type de fichier) avec ses constructeurs? Est-ce juste pour le traitement des fichiers, si oui, qu'est-ce que cela signifie?

Toute aide sera grandement appréciée!

Merci

+4

avez-vous regardé sa documentation? avez-vous vérifié toute source d'information (livre, google, documentation officielle)? – Stultuske

+1

Jetez un oeil à ce post: https://stackoverflow.com/questions/6142901/how-to-create-a-file-in-a-directory-in-java –

+2

Non: un 'File' est plus comme un représentation d'un chemin, comme '/ foo/bar/something.txt'. Cela peut exister ou non (et vous pouvez le vérifier en utilisant la méthode 'File.exists()' Vous pouvez créer le fichier en utilisant quelque chose comme 'FileOutputStream' ou' FileWriter', qui ont des constructeurs qui prennent ce 'File' comme un paramètre, et écrira dans un fichier au chemin représenté (s'il le peut) –

Répondre

1

Vous pouvez utiliser le java.io.File pour créer un fichier sur le système de fichiers:

File myFile = new File("myFile.txt"); 
myFile.createNewFile(); 

Notez que l'invocation du constructeur ne crée pas le fichier sur le système de fichiers. Pour créer un fichier vide, la méthode createNewFile() doit être appelée.

Le File représente simplement une abstraction de l'emplacement du fichier, pas le fichier lui-même. Il est livré avec des opérations sur le fichier identifié par le chemin: exists(), delete(), length(), etc.

Ce que vous voulez sans doute est d'utiliser les classes qui vous permettent de écrire du contenu dans un fichier:

  • Si vous écrivez du texte, vous devez utiliser l'interface Writer. Si vous écrivez du contenu binaire, vous devez utiliser l'interface OutputStream.

Les classes FileWriter et FileOutputStream sont, respectivement, celles qui relient les File et Writer/OutputStream concepts ensemble. Ces classes créent le fichier sur le système de fichiers pour vous.

FileWriter myFileWriter = null; 
    File myFile = new File("myFile.txt"); 
    try { 
     // file is created on the file-system here 
     myFileWriter = new FileWriter(myFile); 

     myFileWriter.write("hello"); 
    } finally { 
     if (myFileWriter != null) { 
      myFileWriter.close(); 
     } 
    } 
1

Vous pouvez créer un fichier en utilisant la méthode File.createNewFile, ou, si vous utilisez Java 7 ou plus récent, en utilisant la nouvelle méthode Files.createFile. La différence entre l'ancienne classe File et la nouvelle classe Path est que la première a mélangé une référence à un chemin d'accès à un fichier sur le système de fichiers et les opérations que vous pouvez y effectuer, et cette dernière représente simplement le chemin lui-même mais permet vous l'interroger et analyser sa structure.