Lire et écrire des fichiers texte

Soyez le premier à donner votre avis sur cette source.

Vue 9 635 fois - Téléchargée 1 189 fois

Description

Il me semble que sur le forum il y a pas mal de questions sur l'accès aux fichiers texte, voilà une source très simple qui permettra d'y répondre.

Source / Exemple :


import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.Writer;
import java.util.ArrayList;
import java.util.List;

/**
 * 
 * @classe GestionFichiers
 * 
 * @description Classe qui gere les acces aux fichiers textes
 * 
 * @author Julien
 *
 */

public class GestionFichiers {

    /**
     * cette fonction va lire le contenu d'un fichier
     * @param nomFichier : nom du fichier en entree
     * @return resultat : liste des lignes
     */
    public static List<String> lireFichier(String nomFichier){
        BufferedReader fluxEntree=null;
        String ligneLue;
        List<String> lignes = new ArrayList<String>();
        try{
            fluxEntree = new BufferedReader(new FileReader(nomFichier));
            ligneLue = fluxEntree.readLine();
            while(ligneLue!=null){
                lignes.add(ligneLue);
                ligneLue = fluxEntree.readLine();
            }
        }
        catch(IOException exc){
            exc.printStackTrace();
        }
        try{
            fluxEntree.close();
        }
        catch(IOException e){
            e.printStackTrace();
        }
        return lignes;
    }

    /**
     * Ce procédure écrit dans le fichier les lignes de la liste
     * @param nomFichier : nom du fichier dans lequel écrire
     * @param lignes : liste des lignes à écrire
     */
    public static void ecrireFichier(String nomFichier, List<String> lignes){
        Writer fluxSortie=null;
        try{
            fluxSortie = new PrintWriter(new BufferedWriter(new FileWriter(
                    nomFichier)));
            for(int i=0;i<lignes.size()-1;i++){
                fluxSortie.write(lignes.get(i)+"\n");
            }
            fluxSortie.write(lignes.get(lignes.size()-1));
        }
        catch(IOException exc){
            exc.printStackTrace();
        }
        try{
            fluxSortie.close();
        }
        catch(IOException e){
            e.printStackTrace();
        }
    }
}

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

fahdmustapha
Messages postés
14
Date d'inscription
vendredi 5 mars 2010
Statut
Membre
Dernière intervention
26 décembre 2011
-
Merci julien39 ça ma énormément aidée
bonjour quel qu'un pourrais me dire comment lire un fichier txt mot par mot svp! je m'explique: imaginons j'ai un fichier: 343 453 345 + - /
à la fin je voudrais un tableau de string :
{343,453,345,+,-,/}

c'est pour réaliser une calculette polonaise inversée. la fonction prend en paramètre un fichier txt

merci d'avance
cs_Julien39
Messages postés
6419
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
242 -
Salut,

Il te suffit de lire le fichier et ensuite sur chaque ligne :
StringTokenizer st = new StringTokenizer(ligne);

(cherche la doc de StringTokenizer)

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.