Passage a la ligne lors de l'ecriture dans un fichier

[Résolu]
Signaler
Messages postés
16
Date d'inscription
mercredi 29 janvier 2003
Statut
Membre
Dernière intervention
27 septembre 2004
-
Messages postés
5365
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
12 août 2021
-
Bonjour,
Je recupere plusieurs chaine de caractere que je concatene avant d'ecrire dans un fichier et je voudrais pour voir au moment de les concatener inserer les caracteres de saut de ligne et reour a la ligne

merci d'avance

4 réponses

Messages postés
5365
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
12 août 2021
111
La méthode la plus simpliste reste de faire
sfichier=chaine1 + "\n"
sfichier=sfichier+chaine2 + "\n"
sfichier=sfichier+chaine3 + "\n"
Messages postés
5365
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
12 août 2021
111
hello,

peux tu etre precis? tu veux inserer \n à quel niveau??
Messages postés
5365
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
12 août 2021
111
si tu veux ajouter une nouvel ligne dans un string fais
  String [] sz = {"toto\n", "tata"};
  public void Ecrivain(String NomFichier) {
    try {
      File f = new File("rep" + File.separator +NomFichier);
      FileWriter fw = new FileWriter(f, true);
      BufferedWriter bw= new BufferedWriter(fw);
      for(int i = 0; i < sz.length; i++){
        bw.write(sz[i]);
      }
      bw.flush();
      bw.close();
    }catch (IOException e) {
      System.out.println("Erreur : " + e.getMessage);
    }
  }



affiche dans ton fichier text(uniquement des editeurs type word pad)
toto
tata

Sinon si tu veux le rendre portable à des éditeurs type note pad
sa ce joue dans l'écriture du fichier

  String [] sz = {"toto", "tata"};
  public void Ecrivain(String NomFichier) {
    try {
      File f = new File("rep" + File.separator +NomFichier);
      FileWriter fw = new FileWriter(f, true);
      BufferedWriter bw= new BufferedWriter(fw);
      for(int i = 0; i < sz.length; i++){
        bw.write(sz[i]);
        bw.newLine();
      }
      bw.flush();
      bw.close();
    }catch (IOException e) {
      System.out.println(("Erreur : " + e.getMessage);
    }
  }


affiche
toto
tata

Dsl mais je ne connais pas bien les éditeurs de linux donc pour la première méthode je ne m?avancerai pas à dire que c'est le même principe mais la dernier méthode passe
Messages postés
16
Date d'inscription
mercredi 29 janvier 2003
Statut
Membre
Dernière intervention
27 septembre 2004

En fait je prepare ma chaine de caractere
sfichier=chaine1
sfichier=sfichier+chaine2
sfichier=sfichier+chaine3
java.io.Writer outPrint = new java.io.OutputStreamWriter(new java.io.FileOutputStream(sNameFile),"8859_7")
outPrint.write(sfichier);
outPrint.close();

voila ce qui existe auj

et je voudrais lorsque je fais "sfichier=sfichier+chaine2" inserer entre sfichier et chaine2 les caracteres de saut de ligne