Besoin correction code découpage de texte

Fermé
saly - 29 déc. 2009 à 10:24
nark Messages postés 29 Date d'inscription jeudi 12 juin 2008 Statut Membre Dernière intervention 7 mai 2010 - 2 janv. 2010 à 15:33
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
A voir également:

6 réponses

nark Messages postés 29 Date d'inscription jeudi 12 juin 2008 Statut Membre Dernière intervention 7 mai 2010 6
29 déc. 2009 à 10:32
Bonjour,

ton fichier texte comment est il construit : des sauts de ligne? des caractères de ponctuations?
0
Il est construit par des phrases bon il ya des sauts de ligne et des caractères de ponctuations
0
nark Messages postés 29 Date d'inscription jeudi 12 juin 2008 Statut Membre Dernière intervention 7 mai 2010 6
30 déc. 2009 à 10:31
ç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();
		}
	
	}
}
0
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nark Messages postés 29 Date d'inscription jeudi 12 juin 2008 Statut Membre Dernière intervention 7 mai 2010 6
31 déc. 2009 à 13:08
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;
        }
}
0
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
0
slt
merci bcp nark j'ai trouvé une solution
0
nark Messages postés 29 Date d'inscription jeudi 12 juin 2008 Statut Membre Dernière intervention 7 mai 2010 6
2 janv. 2010 à 15:33
impeccable mets ta solu et mets à resolu le post

a bientôt :-)
0