2011-03-08 3 views
3

Je suis vraiment nouveau à Java, et je ne peux pas écrire dans un fichier pour une raison quelconque, mon code ressemble à ceci:écriture dans un fichier en Java

FileWriter fstream; 
    try { 
     fstream = new FileWriter(fileLocation); 
     BufferedWriter out = new BufferedWriter(fstream); 
     log.info("test was supposed to be written to the file"); 
     out.write("test"); 

     out.flush(); 
     out.close(); 

    } catch (IOException e) { 
     log.error("File not created ", e); 
    } 

Quand je vais à la fileLocation, Je vois mon fichier, mais c'est vide. Mon journal indique que "le test devait être écrit dans le fichier"

Que pourrais-je faire de mal ici?

Merci!

MISE À JOUR: Ma variable FileLocation est une chaîne:

private String fileLocation="/Users/s/out.txt"; 

J'utilise un code Mac

+0

Et si vous essayez de faire aussi fstream.flush(); fstream.close(); ? –

+1

Vous avez oublié de fermer le fichier – starcorn

+0

Pouvez-vous poster le reste de votre programme et aussi quelle est la valeur de "fileLocation" lorsque vous l'exécutez? Aussi, êtes-vous sur Windows, Mac ou * nix? –

Répondre

3

est très bien. Êtes-vous en train de vérifier le bon emplacement du fichier? Peut-être avez-vous créé le fichier que vous vérifiez auparavant? alors que votre programme pourrait écrire ailleurs.

+0

Vous avez raison, j'utilise Vaadin pour rendre ce fichier téléchargeable, donc chaque fois que je l'ai téléchargé, il était vide, mais le fichier original semble avoir "test" dedans. Merci pour la suggestion :) –

Questions connexes