Debutante en java: lire et ecrire ds un fichi

Sophie -  
 wol -
Bonjour,

Je suis toute debutante en java, et voila mon pb:

je veux pouvoir lire un fichier .txt, prendre son contenu y ajouter du texte et enregistrer le tout dans un
autre fichier.

Merci a tous

5 réponses

  1. lama
     
    Pour lire un fichier et récupérer une chaine de caractères:

    String openFile(String fileName){
    String resultat = new String("");
    try
    {
    File file = new File(fileName);
    int size = (int)file.length();
    int chars_read = 0;
    FileReader in = new FileReader(file);
    char[] data = new char[size];
    while(in.ready()) {
    chars_read += in.read(data, chars_read, size - chars_read);
    }
    resultat = new String(data, 0, chars_read);
    in.close();
    }
    catch (IOException e)
    {
    statusBar.setText("Error opening "+fileName);
    }
    java.io.StringReader test = new java.io.StringReader(resultat);
    return resultat;
    }

    et pour écrire dans un fichier, c'est plus facile:

    public void creerFichier(String nomFichier, String message) {
    try {
    FileWriter fichier = new FileWriter(nomFichier);
    fichier.write(message);
    fichier.close();
    }
    catch (java.io.IOException ex){System.out.println("pb de fichier: " + ex);};
    }

    Voilà :-)

    lama
    2
  2. lama
     
    Oups, je suis allez un peu vite dans mon copier coller ;-)

    Dans openfile, tu peux supprimer la ligne
    java.io.StringReader test = new java.io.StringReader(resultat);
    et remplacer statusBar.setText par un System.out.err par exemple.

    A+
    lama
    0
  3. Sophie
     
    Moi je me penchais plutot sur les FileOutputStream et les FileIntputStream.
    C'est pas plus simple !!!
    comme je l'ai deja dit je suis debutante et je connais pas grd chose.Je faisais du C avant et là j'attaque l'objet avec ces classes et autres.
    0
  4. lama
     
    Salut,

    Moi, j'utilise les fileReader et FileWriter, et ça marche bien. Mais je ne les utilise qu'avec des petits fichiers (quelques mégas maxi.)
    Mais, il n'y a pas qu'une bonne solution.

    A+
    lama
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. wol
     
    Pour que le programme soit claire il te faut maitre un peut de commentaire ;)
    0