Forum Clubic

"nettoyer" une ligne - en java avec readline()

Bonjour,

J’essay de supprimer les guillemets d’une ligne. pour lire la ligne j’utilise la methode readline(). Seuelement j’arrive a supprimer qu’un seul guillemet le premier.

Voici le code:


  File file=new File("C:\\calltax.2.3.719.complete\\data\\import\\Cisco\\cdr_SCALLM01-Cluster_01_200703091109_86.dat");
  dir = "C:\\ticket_sans_guillemets.txt";
  File ft = new File(dir);
  ft.createNewFile();
  FileWriter fileout=new FileWriter(ft);
  try {
  	FileReader readerFile=new FileReader(file);
  	BufferedReader reader=new BufferedReader(readerFile);
  	//while(fileReader!=-1){
  	fileReader=reader.readLine();
  	System.out.println(fileReader);
  	StringTokenizer st = new StringTokenizer(fileReader, "\"");
  	while (st.hasMoreTokens()) {
  	fileReader.replace("\"","");
    System.out.println(fileReader);
  	}
  	fileout.append(fileReader);
      }
  catch (FileNotFoundException e) {
  	// TODO Auto-generated catch block
  	e.printStackTrace();
  }

Merci de votre aide.

Bonjour,
tu ne te sert pas de ton StringTokenizer alors tu peux l’enlever.

d’autre part les String sont des objet non-modifiable, donc toutes les méthodes renvoie la string modifiées, il faut donc faire:
fileReader = fileReader.replace("\"","")

et là ça remplace tout.

Merci pour la reponse rapide.
Maintenant j’ai un probleme, j’arrive pas à ecrire dans le fichier de sortie.
j’ai bien un fichier qui se crée mais il y a rien dedans.
j’ai essayé filout.append et fileout.write mais rien.


  File file=new File("C:\\calltax.2.3.719.complete\\data\\import\\Cisco\\cdr_SCALLM01-Cluster_01_200703091109_86.dat");
  dir = "C:\\ticket1_sans_guillemets.txt";
  File ft = new File(dir);
  ft.createNewFile();
  FileWriter fileout=new FileWriter(ft);
  try {
  	FileReader readerFile=new FileReader(file);
  	BufferedReader reader=new BufferedReader(readerFile);
  	fileReader=reader.readLine();
    while(fileReader!=null){
    fileReader = fileReader.replace("\"","");
  	System.out.println(fileReader);
  	fileout.write(fileReader);
  	//fileout.append(fileReader);
  	fileReader=reader.readLine();
    	}
      }
  catch (FileNotFoundException e) {
  	// TODO Auto-generated catch block
  	e.printStackTrace();

Merci encore.

as-tu essayé
fileout.flush();
fileout.close();

à la fin?

Ok c bon ca marche Merci beaucoup…