Lire et écrire dans un fichier texte

Signaler
Messages postés
1
Date d'inscription
lundi 6 janvier 2003
Statut
Membre
Dernière intervention
30 janvier 2007
-
saadrajawi05
Messages postés
4
Date d'inscription
lundi 31 mars 2008
Statut
Membre
Dernière intervention
15 juin 2009
-
bonjour,
tout d'abors je suis qu'un débutant en JAVA, et j'aimerai bien que vous m'aider a faire un petit programme qui me permet d'ecrire et lire dans un fichier texte, pare exemple une fiche client[ NOM; PRENOM;ADRESSE]
Merci pour votre aide!!!!!!!!!gentil men

3 réponses

Messages postés
51
Date d'inscription
samedi 3 janvier 2004
Statut
Membre
Dernière intervention
26 mai 2007
1
Si nom, prenom et adresse ne contiennent pas de tabulation tu peux faire:
String ligne =  "nom\tprenom\tadresse\n";
ecrire(ligne);

Sinon, utiliser des caractères à la con comme "/" ou (presque) ce que tu veux à la place de "\t" puis pour la lecture lire ligne à ligne
avec des tokenizers.

Cherche sur javafr un code pour ecrire dans un fichier ligne par ligne (y en a un paquet) et après tu regardes tu coté des Strings tokenizers.

La vérité si tu cherches bien, tu comprends ce que tu lis et tu crées ta classes en 2 secondes.
Messages postés
188
Date d'inscription
mercredi 9 avril 2003
Statut
Membre
Dernière intervention
10 août 2009

il y a la serialisation :
il faut marquer ta classe par l'implementation de Serializable et ensuite pour enregistrer / charger ton fichier tu crée des Object__putStream :

public class Client implements java.io.Serializable {
   // TES CHAMPS
}

et dans une procédure :
Lecture :
try {
        ObjectInputStream ois = new ObjectInputStream(new BufferedInputStream(new FileInputStream( "TON FICHIER")));
          leClient = (Client) ois.readObject();
} catch (FileNotFoundException e) {
        e.printStackTrace();
} catch (IOException e) {
        e.printStackTrace();
} catch (ClassNotFoundException e) {
        e.printStackTrace();
}

Ecriture :
try {
        ObjectOutputStream oos = new ObjectOutputStream(new BufferedOutputStream(new FileOutputStream("TON FICHIER")));
        oos.writeObject(leClient);
        oos.close();
        } catch (FileNotFoundException e) {
             e.printStackTrace();
        } catch (IOException e) {
             e.printStackTrace();
        }

Ceci marche aussi pour les vecteurs et serialise tous les objets contenus. Ca permet d'enregistrer n'importe qu'elle classe, du moment qu'elle est marqué Serializable.
Ensuite si ta classe contient des attributs que tu ne souhaite pas enregistré (des attributs necessaires a l'evolution de l'objet mais calculable), il faut les declaré volatile :
private volatile int utilePourLeCalcul;

Pour plus d'info, regarde la javadoc de l'interface Serializable.

++
Messages postés
4
Date d'inscription
lundi 31 mars 2008
Statut
Membre
Dernière intervention
15 juin 2009

je sui interessent pour le vecteur plz et merci mon frer