Besoin correction code découpage de texte

Bonjour,
J'ai besoin d'une classe java qui permet d'accéder à un fichier texte et de le découper en chaines de caractères tout en les stockant dans un tableau, alors j'ai essayer le code suivant:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.FileReader;
public class saly{
public static void main(String args[])
{
int y=0;
String ligne = null;
BufferedReader aLire_user = null;
try {
aLire_user = new BufferedReader(new FileReader("C:/o.txt"));

} catch (IOException e) {

e.printStackTrace();
}
do {
try {
ligne = aLire_user.readLine();
//System.out.println(ligne);

} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if (ligne!=null) {
String tab_user[] = ligne.split("");
System.out.println(tab_user[y]);
y++;
}
}while (ligne!=null);
try {
aLire_user.close( );
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

mon fichier texte est : ab cd ef gh ij kl
nm ok pl m, kh
Quand j'exécute le programme il ne m'affiche que n
Aidez-moi svp
merci d'avance
Configuration: Windows Vista
Safari 532.0

6 réponses

  • Votes
  • Date
  • Date décroissante
  1. Si je comprend bien, tu veux lire tes fichiers et rajouter dans chaque fichier une ligne " mot de passe" (pas très sécuriser dans un fichier!)

    import java.io.*;
    import java.util.ArrayList;
    
    
    public class Fichier {
    	
    private String path;
    private BufferedReader buff;
    private BufferedWriter writ;
    
    	public Fichier(String fic)
    	{
    		this.path = fic;
    	}
    	public void readFile()
    	{
    		ArrayList maList = new ArrayList();
    		String line,data = "";
    		try{
    			buff = new BufferedReader(new FileReader(this.path));
    			while((line = buff.readLine()) != null)
    			{
    				data = data +line+"\r\n";// saut de ligne
    			}
    			String mdp = genererMdp(); // on récupère le mot de passe généré
    			writ = new BufferedWriter(new FileWriter(this.path)); // on créer l'objet file pour écrire dans le même fichier
    
                writ.write(data+"\r\n");// on écrit dans le fichier
    
                writ.write("mot de passe:"+mdp); // on insère dans le fichier le mdp
    			buff.close();
    			writ.close();
    		}
    		catch(IOException e)
    		{
    			e.printStackTrace();
    		}
    	
    	}
           public String genererMdp()
           {
             // génère ton mdp
        	 return null;
            }
    }
    
    1. slt
      En faite c'est pas exactement ça ce que je cherche à faire
      mon fichier texte est de la forme suivant:

      Agence Nationale de Certification Electronique
      Addresse: Parc Technologique El Ghazala, Route de Raoued - Tunisie
      Tel: +216 70 834 600
      Fax: +216 70 834 555
      E-mail: ance@certification.tn

      Nom:
      Prénom:
      N°CIN:
      Mot de passe:

      à chaque fois que j'exécute mon code, il doit me rendre le mot de passe (la chaine de caractère qui suit le terme "mot de passe" ), je prend un exemple:
      Mot de passe: FDR'6@u5:?y
      je veux avoir une variable passwd==FDR'6@u5:?y
      Que dois-je faire????
      merci d'avance
    2. @Salyslt
      merci bcp nark j'ai trouvé une solution
  2. merci de me répondre
    c'est le contenu de mon fichier texte:

    Agence Nationale de Certification Electronique
    Addresse: Parc Technologique El Ghazala, Route de Raoued - Tunisie
    Tel: +216 70 834 600
    Fax: +216 70 834 555
    E-mail: ance@certification.tn

    Nom:
    Prénom:
    N°CIN:
    Mot de passe: 8ty?3KI8i3R@@NjKy

    Maintenant je cherche à mettre la chaine: 8ty?3KI8i3R@@NjKy ( qui va varier d'un fichier à un autre) dans un variable de type String
    merci d'avance
    1. ça serais bien ke tu montre une partie de ton fichier texte pour voir comment l'analyser! Dans ta classe que fournit ci-dessus, tu fais un split de tes lignes sur vide mais les caractères de ponctuations stockés dans le tableau de chaine ne sont pas un incovénient?

      Voila un bout de code simple:

      import java.io.*;
      import java.util.ArrayList;
      
      
      public class Fichier {
      	
      private String path;
      private BufferedReader buff;
      
      	public Fichier(String fic)
      	{
      		this.path = fic;
      	}
      	public void readFile()
      	{
      		String line = "";
      		try{
      			buff = new BufferedReader(new FileReader(this.path));
      			int i =0;
      			while((line = buff.readLine()) != null)
      			{
      				String tab[] = line.split(" ");
      				System.out.println(tab);
      				i++;
      				
      			}
      			buff.close();
      		}
      		catch(IOException e)
      		{
      			e.printStackTrace();
      		}
      	
      	}
      }
      
      1. Il est construit par des phrases bon il ya des sauts de ligne et des caractères de ponctuations
        1. Bonjour,

          ton fichier texte comment est il construit : des sauts de ligne? des caractères de ponctuations?