Aidez moi, Debutante JAVA!!!

Nathalie -  
 HackTrack -
Bonjour,

Je veux balayer un fichier.txt a la recherche d'une chaine de caracteres, puis remplacer celle a par autre chose.
Comment faire SVP?????????

Merci d'avance

4 réponses

  1. Dworf Messages postés 627 Statut Membre 17
     
    je peux te faire ca en vb si tu veux
    0
  2. Nathalie
     
    Merci c'est sympa de ta part.
    Mais on me le demande en java!!!
    0
  3. GlopGlop
     
    tu peux lire le fichier et le charger en mémoire dans un String puis appliquer Substring et réecrire le ficheir mais attention à la taille du fichier
    0
  4. HackTrack
     
    Voilà une solution possible, Nathalie:

    import java.io.*;

    /**
    *
    * @author HackTrack
    * @version 1.0
    */
    public class Tester extends Object {

    /** Creates new Tester */
    public Tester() {
    }

    /**
    * @param args the command line arguments
    */
    public static void main (String args[]) {
    try{
    // Pour tester ceci, crée un petit fichier texte que tu enregistres dans c:\
    // et appelles-le "test.txt". Ecris-y le texte suivant:
    // "Ceci est un petit fichier qui va servir de test"
    //Une fois que tu auras lancé cette classe, le résultat sera stocké dans le fichier:
    //"C:\test2.txt"
    File f = new File("C:/test.txt");
    BufferedReader br= new BufferedReader(new FileReader(f));
    StringBuffer datas = new StringBuffer();
    String line;
    while((line = br.readLine())!= null){
    datas.append(line);
    }

    //La chaîne à remplacer
    String toReplace = "servir de";
    //La chaîne de remplacement
    String replaceBy="subir un";
    String search;
    for(int i=0 ; i<datas.length()-toReplace.length() ; i++){
    search = datas.substring(i, i+toReplace.length());
    System.out.println(search);
    if(search.equals(toReplace)){
    datas.replace(i,i+toReplace.length(), replaceBy);
    }
    }
    System.out.println(datas);
    File f2= new File("C:/test2.txt");
    BufferedWriter bw = new BufferedWriter(new FileWriter(f2));
    bw.write(datas.toString());
    bw.flush();
    bw.close();
    System.out.println("Terminé!");

    }catch(FileNotFoundException fnfe){
    }catch(IOException ioe){
    }
    }
    }
    0