IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Entrée/Sortie Java Discussion :

lire et modifier un fichier texte


Sujet :

Entrée/Sortie Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 171
    Points : 80
    Points
    80
    Par défaut lire et modifier un fichier texte
    Bonjour,

    je sollicite votre aide. j'ai cette structure de fichier (juste un petit bout). Je peux donc dans mon cas avoir un nombre tres grand de tableau de quatre colonnes, séparés par des tab et/ou espace, avec le premier tableau précédé par le mot clé KEYWORD1. chaque tableau se termine par un "/"

    Donc pour chaque mot clé j'ai un certain nombre de tableau de quatre colonnes, avec chaque tableau se terminant par un "/" (ce qui indique le passage à un autre tableau).

    En effet, je souhaite donc modifier la quatrieme colonne de chaque tableau si la condition "cond1" n'est pas satisfaite...

    Merci d'avance pour votre aide...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    
    KEYWORD1 
    -- Table 1 <=> 11 Homogenios Lithotype 10 
    -- Sw Krw Kro Pc 
     0.10354 0 1 -3 
     0.10364 1* 1* -3.0001 
     0.14053 1* 1* -3.0539 
     0.17752 1* 1* -3.1106 
     0.21452 1* 1* -3.1706 
     0.25151 1* 1* -3.2343 
     0.28851 1* 1* -3.3021 
     0.3255 1* 1* -3.3745 
     0.36249 1* 1* -3.4523 
     0.39948 1* 1* -3.5364 
     0.43648 1* 1* -3.6277 
     0.47347 1* 1* -3.7278 
     0.51046 1* 1* -3.8384 
     0.54746 1* 1* -3.9621 
     0.58445 1* 1* -4.1023 
     0.62144 1* 1* -4.2642 
     0.65843 1* 1* -4.4556 
     0.69543 0.1601 0.008 -4.6899 
     0.73242 0.2061 0.0034 -4.992 
     0.76941 0.2616 0.001 -5.4177 
     0.80641 0.3276 0.0001 -6.1455 
     0.8434 0.4057 0 -14.7722 
     1 1 0 -1000 
    / 
    -- Table 2 <=> 12 Homogenios Lithotype 10 
    -- Sw Krw Kro Pc 
     0.20283 0 0.8113 -3 
     0.20293 1* 1* -3.0002 
     0.23337 1* 1* -3.0539 
     0.26391 1* 1* -3.1106 
     0.29445 1* 1* -3.1706 
     0.32499 1* 1* -3.2343 
     0.35553 1* 1* -3.3021 
     0.38607 1* 1* -3.3745 
     0.41661 1* 1* -3.4523 
     0.44715 1* 1* -3.5364 
     0.47769 1* 1* -3.6277 
     0.50823 1* 1* -3.7278 
     0.53877 1* 1* -3.8384 
     0.5693 1* 1* -3.9621 
     0.59984 1* 1* -4.1023 
     0.63038 1* 1* -4.2642 
     0.66092 1* 1* -4.4556 
     0.69146 0.0893 0.0076 -4.6899 
     0.722 0.1122 0.0034 -4.992 
     0.75254 0.1392 0.0011 -5.4177 
     0.78308 0.1707 0.0002 -6.1455 
     0.81362 0.2071 0 -14.5709 
     1 1 0 -1000 
    /
    -----------------------
    Cordialement
    Developpeur82

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2009
    Messages : 46
    Points : 45
    Points
    45
    Par défaut
    Tu pourrais être plus précis sur le point qui te pose problème?

  3. #3
    Membre expert

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 301
    Points : 3 675
    Points
    3 675
    Par défaut
    bah ça doit pas être si compliqué non?


    En pseudo-code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    tant que <fin de fichier pas atteinte>
      lire une ligne
      si la ligne est "KEYWORD1", positionner un flag indiquant qu on itère dans un tableau
      sinon si la ligne est "/" réinitialiser le flag
      sinon si le flag est positionné et que la ligne ne commence pas par "--"
        splitter la ligne trimée aux symboles espace ou tab (regexp "\\s")
        si le résultat fait 4 colonne, prendre la 4ème et modifier selon les besoins
        sinon lever une exception
        fin si
      fin si
    fin tant que
    "Le plug gros problème des citations trouvées sur internet, c'est qu'on ne peut jamais garantir leur authenticité"

    Confucius, 448 av. J-C

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 171
    Points : 80
    Points
    80
    Par défaut
    merci bien Pill_S,

    Je vais essayer maintenant de trouver les bons keyword pour que j'exprime ca en Java.

    sachant que le fichier que je souhaite modifier s'appelle "f".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    copyfile(OpenFile.getSelectedFile().getAbsolutePath(), f.getAbsolutePath());
    avec la méthode copyfile j'ai copié le contenu du fichier selectionné dans "f" que je veux modifier...

    Je laisse cette fiche ouverte au cas où je reste bloqué par bien exprimé tout ca en Java....
    -----------------------
    Cordialement
    Developpeur82

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 171
    Points : 80
    Points
    80
    Par défaut
    Pill_S, j'aimerai solliciter ton aide pour appliquer ton algo le meme temps que je cherche de mon coté aussi...

    Merci!!!!
    -----------------------
    Cordialement
    Developpeur82

  6. #6
    Membre expert

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 301
    Points : 3 675
    Points
    3 675
    Par défaut
    t'en fais pas va, si jamais je devais l'implémenter ça me prendrait pas plus de 10 minutes...

    par contre je vais te laisser mariner un moment avant de te filer la solution
    "Le plug gros problème des citations trouvées sur internet, c'est qu'on ne peut jamais garantir leur authenticité"

    Confucius, 448 av. J-C

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 171
    Points : 80
    Points
    80
    Par défaut
    looool je n'ai pas de doutes!!!!

    ok je vais essayer... je suis en train de regarder sur internet des scripts deja fait a ce sujet

    les inputStream and companie.....

    A+
    -----------------------
    Cordialement
    Developpeur82

  8. #8
    Membre éclairé Avatar de unknow0
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 452
    Points : 676
    Points
    676
    Par défaut
    Bonjour,

    je dirai qu'un FileReader, BufferedReader serai plus approprier

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 171
    Points : 80
    Points
    80
    Par défaut
    Re-salut Pill_S!!

    mon fichier lequel je vais modifier est créé et s'appelle "f" (File f)
    voila le code! je ne sais pas s'il applique ton algo en exact! j'aimerai que ce script marche afin que je continue mon travail. Je remplace la 4ème valeur par "nouvel valeur". si ce script marche ca sera nikel car je pourrai l'enrrichir (bien sure la 4ème valeur doit etre calculé donc le script encore enrichie)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
             
    BufferedReader lecteurAvecBuffer = null;
             String ligne;
             boolean JeSuisDedans = false;
    
             try    {
                lecteurAvecBuffer = new BufferedReader(new FileReader(f));
    
                    }
    
             catch(FileNotFoundException exc)  {
                 System.out.println("Erreur d'ouverture");
    
             }
            try {
                while ((ligne = lecteurAvecBuffer.readLine()) != null) {
                    //je suis en train de lire le fichier ligne par ligne
                    System.out.println(ligne);
                    if (ligne.equals("SWOF")) { // remplace KEYWORD1
                        //JeSuisDedans = true;
                        //System.out.println("je suis dedans");
                    }
                    if (!ligne.substring(0, 2).equals("--")) {
                        String[] splitted = ligne.trim().split("\\p"); // tab ou space
                        if (splitted.length != 4) {
                            try {
                                throw new Exception("excep");
                            } catch (Exception ex) {
                                Logger.getLogger(KrPcImporterView.class.getName()).log(Level.SEVERE, null, ex);
                            }
                        } else {
                            splitted[3] = "nouvel valeur";
                            ligne = splitted[0] + "\t" + splitted[1] + "\t" + splitted[2] + "\t" + splitted[3];
                        }
                        System.out.println("et ma ligne devient :  " + ligne);
                    
                       } else if (ligne.equals("/")) {
                        System.out.println("je ne suis plus dedans");
                       "//sinon si la ligne est "/" réinitialiser le flag"
    // je ne sais pas comment réinitialiser le flag si la ligne est "/"
    
                    }
                }
            }   catch (IOException ex) {
                Logger.getLogger(KrPcImporterView.class.getName()).log(Level.SEVERE, null, ex);
            }
    -----------------------
    Cordialement
    Developpeur82

  10. #10
    Membre expert

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2004
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 301
    Points : 3 675
    Points
    3 675
    Par défaut
    quelques détails:

    1) juste après le 1er try/catch, il faut tester que le BufferedReader n'est pas null, car si le fichier n'existe pas, une exception est levée et on arrive dans le catch, et à ce moment là le BufferedReader est null

    2) ensuite:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    try {
                                throw new Exception("excep");
                            } catch (Exception ex) {
                                Logger.getLogger(KrPcImporterView.class.getName()).log(Level.SEVERE, null, ex);
                            }
    ça c'est pas terrible, tu lances une exception que tu catch immédiatement après, tu n'as donc aucun intérêt à la lancer: une exception sert à informer l'appelant que quelque chose s'est mal passé. L'équivalent correct serait plutôt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    throw new RuntimeException("Erreur: la ligne '"+ligne+"' ne contient pas 4 fragments"); // les RuntimeException n'ont pas besoin d'être déclarées dans l'en tête de la méthode ;)
    3) dans la boucle, dans la séquence de if, il ne faut pas oublier le else... bin oui, si la ligne equals "SWOF", ça ne sert à rien, ensuite, de regarder si elle commence par "--"

    4) le flag JeSuisDedans n'est jamais utilisé dans la boucle...

    5) ... pour réinitialiser le flag, utilise simplement "JeSuisDedans = false;"

    "Le plug gros problème des citations trouvées sur internet, c'est qu'on ne peut jamais garantir leur authenticité"

    Confucius, 448 av. J-C

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 171
    Points : 80
    Points
    80
    Par défaut
    Bonjour Pill_S,

    Merci pour la reponse,

    Je ne sais pas si j'ai tout à fait compris mais je pense avoir apporté les modif que tu m'a demandé. voilà le script ci dessous. j'envoie en meme temps le fichier texte (.txt) en piece jointe afin que tu puisses voir plus concretement le probleme.

    Merci encore...



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
     BufferedReader lecteurAvecBuffer = null;
             String ligne;
             boolean JeSuisDedans = false;
             boolean bufferVide = false;
     
             if (!lecteurAvecBuffer.equals(null)){
                  bufferVide = false;
                  }
     
             else {
                  bufferVide = true;
             }
     
     
             try    {
                lecteurAvecBuffer = new BufferedReader(new FileReader(f));
                 bufferVide = false;
             }
     
     
             catch(FileNotFoundException exc)  {
                 System.out.println("Erreur d'ouverture");
                 bufferVide = false;
             }
     
            try {
                while ((ligne = lecteurAvecBuffer.readLine()) != null) {
                    //je suis en train de lire le fichier ligne par ligne
                    System.out.println(ligne);
                    if (ligne.equals("SWOF")) {
                        JeSuisDedans = true;
                        System.out.println("je suis dedans");
                    }
                    else if (!ligne.substring(0, 2).equals("--")) {
                        String[] splitted = ligne.trim().split("\\p"); // tab ou space
                        if (splitted.length != 4) {
                          throw new RuntimeException("Erreur: la ligne '"+ligne+"' ne contient pas 4 fragments");
                        } else {
                            splitted[3] = "nouvel valeur";
                            ligne = splitted[0] + "\t" + splitted[1] + "\t" + splitted[2] + "\t" + splitted[3];
                        }
                        System.out.println("et ma ligne devient :  " + ligne);
                    } else if (ligne.equals("/")) {
                        System.out.println("je ne suis plus dedans");
                        JeSuisDedans = false;
                    }
                }
            }   catch (IOException ex) {
                Logger.getLogger(KrPcImporterView.class.getName()).log(Level.SEVERE, null, ex);
                JeSuisDedans = false;
            }
    Fichiers attachés Fichiers attachés
    -----------------------
    Cordialement
    Developpeur82

  12. #12
    Membre éclairé Avatar de unknow0
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 452
    Points : 676
    Points
    676
    Par défaut
    Bonjour,

    Citation Envoyé par developpeur82 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     if (!lecteurAvecBuffer.equals(null)){
                  bufferVide = false;
                  }
    ca ne marchera pas, ou plus presisement si lecteurAvecBuffer est null tu aura un NUllPointerException car tu tante d'appeler une method sur un objet null.
    il faut plutot faite:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (lecteurAvecBuffer!=null)
    Mais se teste en soit ne sert pas vu que tu sais d'avance que lecteurAvecBuffer est null.

    sinon pour sauvegarder les ligne modifier voirs du coter de FileWriter et PrintWriter

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 171
    Points : 80
    Points
    80
    Par défaut
    ok voila ma derniere version. besoin vraiment d'un expert afin que je puisse avancé mon script car ce n'est qu'une partie et doit etre enrichi.
    Je joins le vrai fichier à tester! svp help...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
         //    BufferedReader lecteurAvecBuffer = null;
             String ligne;
             boolean swofMode = false;
             boolean sgofMode = false;
     
             try    {
                BufferedReader lecteurAvecBuffer = new BufferedReader(new FileReader(f));
     
                while ((ligne = lecteurAvecBuffer.readLine()) != null) {
                    //je suis en train de lire le fichier ligne par ligne
                    System.out.println(ligne);
                    if (ligne.equals("SWOF")) {
     
                        swofMode = true;
                        sgofMode= false;
                        System.out.println("je suis mode SWOF");
                    }
                    else if (ligne.equals("SGOF")) {
                        sgofMode = true;
                        swofMode = false;
                        System.out.println("je suis mode SGOF");
                    }
                    else if (ligne.substring(0, 2).equals("--") || ligne.equals("/") || (ligne.trim().length() == 0)) {
                        System.out.println("commentaire, fin de table, ou ligne vide => je l'ignore");
                    }
                    else { //vrai ligne avec des valeurs
     
                        String[] splitted = ligne.trim().split("\\p"); // tab ou space
     
                        if (splitted.length != 4) {
                          throw new RuntimeException("Erreur: la ligne '"+ligne+"' ne contient pas 4 fragments");
                        } else {
                            if (swofMode) {
                                splitted[3] = "nouvel valeur SWOF";
                            } else if (sgofMode) {
                                splitted[3] = "nouvel valeur SGOF";
                            }
                            ligne = splitted[0] + "\t" + splitted[1] + "\t" + splitted[2] + "\t" + splitted[3];
     
                        }
                        System.out.println("et ma ligne devient :  " + ligne);
                    }
                }
     
             }
     
            catch(Exception ex)  {
                System.out.println("Erreur : je sors !");
     
                Logger.getLogger(KrPcImporterView.class.getName()).log(Level.SEVERE, null, ex);
            }
    Fichiers attachés Fichiers attachés
    -----------------------
    Cordialement
    Developpeur82

  14. #14
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 171
    Points : 80
    Points
    80
    Par défaut methode split(); comment désigner l'espace et tab à la fois?
    String ligne = " 1 2 3 4 "

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ligne.trim().split("\t"); // si l'espace entre les valeurs de la ligne est tab
    ligne.trim().split(" "); // si l'espace entre les valeurs de la ligne est Espace

    pour espace et tab à la fois c'est quoi?


    Merci d'avance,
    -----------------------
    Cordialement
    Developpeur82

  15. #15
    Membre éclairé Avatar de unknow0
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 452
    Points : 676
    Points
    676
    Par défaut
    Bonjour,

    c'est: [ \t]
    ou plus généralement pour designer un caractère blanc: \s
    (et oui split prend une regex en argument )

  16. #16
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 171
    Points : 80
    Points
    80
    Par défaut besoin d'un expert svp
    je recapitule car je suis bloqué:

    mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
             String ligne;
             String new_line;
             boolean swofMode = false;
             boolean sgofMode = false;
             
             try    {
                BufferedReader lecteurAvecBuffer = new BufferedReader(new FileReader(f));
                   
                while ((ligne = lecteurAvecBuffer.readLine()) != null) {
                    //je suis en train de lire le fichier ligne par ligne
                    System.out.println(ligne);
                       
                    if (ligne.trim().equals("SWOF")) {
                        
                        swofMode = true;
                        sgofMode= false;
                        System.out.println("je suis mode SWOF");
                    }
                    else if (ligne.trim().equals("SGOF")) {
                       
                        sgofMode = true;
                        swofMode = false;
                        System.out.println("je suis mode SGOF");
                    }
                    else if (ligne.substring(0, 2).equals("--") || ligne.equals("/") || (ligne.trim().contains("==")) || ligne.trim().equals("SWOF") || ligne.trim().equals("SGOF") || ligne.trim().isEmpty() ) {
                        System.out.println("commentaire, fin de table, ou ligne vide, SWOF, SGOF => je l'ignore ");
                        
                    }
                    else { //vrai ligne avec des valeurs
                       
                        String[] splitted = ligne.trim().split(" "); // tab ou space
    
                        if (splitted.length != 4) {
                            
                          throw new RuntimeException("Erreur: la ligne '"+ligne+"' ne contient pas 4 fragments");
    
                        } else {
                            
                            if (swofMode) {
                                
                                splitted[3] = "nouvel valeur SWOF";
                                
                            } else if (sgofMode) {
                                
                                splitted[3] = "nouvel valeur SGOF";
                                
                            }
                            new_line = splitted[0] + "\t" + splitted[1] + "\t" + splitted[2] + "\t" + splitted[3];
                            
    
                        }
                        System.out.println("et ma ligne devient :  " + new_line);
    
                        ligne.replace(ligne, new_line);
                       // replace ne remplace pas dans mon fichier la 4eme valeur par "nouvel valeur SWOF" ou "nouvel valeur SGOF"
                                 
                    }
                }
        
    
             }
    
    
            catch(Exception ex)  {
         
                System.out.println("Erreur : je sors !");
    
                Logger.getLogger(KrPcImporterView.class.getName()).log(Level.SEVERE, null, ex);
            }



    please help!

    j'ai mis la tete du fichier de depar et celui d'arrivé que je suis sensé obtenir....

    PS: je n'arrive plus à envoyé des PJ mais en gros fichier de depart:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    -- ========================W/O KRPCS================================
    -- ./includenew/newswof_216_0pcf_08nw.inc + ./includenew//newsgof_216.inc 
     
    SWOF 
    -- Table 1 <=> 11 Homogenios Lithotype 10 
    -- Sw Krw Kro Pc 
     0.10354 0 1 -3 
     0.10364 1* 1* -3.0001 
     0.14053 1* 1* -3.0539 
     0.17752 1* 1* -3.1106 
     0.21452 1* 1* -3.1706 
    / 
     
    -- Table 2 <=> 12 Homogenios Lithotype 10 
    -- Sw Krw Kro Pc 
     0.20283 0 0.8113 -3 
     0.20293 1* 1* -3.0002 
     0.23337 1* 1* -3.0539 
     0.26391 1* 1* -3.1106 
     0.29445 1* 1* -3.1706 
     0.32499 1* 1* -3.2343 
     0.35553 1* 1* -3.3021 
     0.38607 1* 1* -3.3745
    /
     
     
    --=======================KRPC G/O=======================================
     
    SGOF    
    -- Table  1 <=> 11  Homogenios Lithotype 10    
    -- Sg  Krg  Krog  Pcog
    0.00000 0.00000 1.00000 0.00000
    0.05603 0.00010 0.80000 0.00000
    0.11206 0.00180 0.60970 0.00000
    0.16809 0.00780 0.43690 0.00000
    /
     
    -- Table  2 <=> 12  Homogenios Lithotype 10    
    -- Sg  Krg  Krog  Pcog
    0.00000 0.00000 0.81130 0.00000
    0.04982 0.00008 0.64904 0.00000
    0.09965 0.00146 0.49465 0.00000
    0.14947 0.00633 0.35446 0.00000
    0.19929 0.01671 0.24850 0.00000
    0.24912 0.03489 0.17005 0.00000
    /

    fichier converti:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    -- ========================W/O KRPCS================================
    -- ./includenew/newswof_216_0pcf_08nw.inc + ./includenew//newsgof_216.inc 
     
    SWOF 
    -- Table 1 <=> 11 Homogenios Lithotype 10 
    -- Sw Krw Kro Pc 
     0.10354 0 1 nouvel valeur SWOF
     0.10364 1* 1* nouvel valeur SWOF
     0.14053 1* 1* nouvel valeur SWOF
     0.17752 1* 1* nouvel valeur SWOF
     0.21452 1* 1* nouvel valeur SWOF
    / 
     
    -- Table 2 <=> 12 Homogenios Lithotype 10 
    -- Sw Krw Kro Pc 
     0.20283 0 0.8113 nouvel valeur SWOF
     0.20293 1* 1* nouvel valeur SWOF
     0.23337 1* 1* nouvel valeur SWOF
     0.26391 1* 1* nouvel valeur SWOF
     0.29445 1* 1* nouvel valeur SWOF
     0.32499 1* 1* nouvel valeur SWOF
     0.35553 1* 1* nouvel valeur SWOF
     0.38607 1* 1* nouvel valeur SWOF
    /
     
    --=======================KRPC G/O=======================================
     
    SGOF    
    -- Table  1 <=> 11  Homogenios Lithotype 10    
    -- Sg  Krg  Krog  Pcog
    0.00000 0.00000 1.00000 nouvel valeur SGOF
    0.05603 0.00010 0.80000 nouvel valeur SGOF
    0.11206 0.00180 0.60970 nouvel valeur SGOF
    0.16809 0.00780 0.43690 nouvel valeur SGOF
    /    
     
    -- Table  2 <=> 12  Homogenios Lithotype 10    
    -- Sg  Krg  Krog  Pcog
    0.00000 0.00000 0.81130 nouvel valeur SGOF
    0.04982 0.00008 0.64904 nouvel valeur SGOF
    0.09965 0.00146 0.49465 nouvel valeur SGOF
    0.14947 0.00633 0.35446 nouvel valeur SGOF
    0.19929 0.01671 0.24850 nouvel valeur SGOF
    0.24912 0.03489 0.17005 nouvel valeur SGOF
    /
    -----------------------
    Cordialement
    Developpeur82

  17. #17
    Membre éclairé Avatar de unknow0
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 452
    Points : 676
    Points
    676
    Par défaut
    Bonjour,

    Citation Envoyé par unknow0 Voir le message
    sinon pour sauvegarder les ligne modifier voirs du coter de FileWriter et PrintWriter
    pour sauvegarder les ligne modifier il faudra les ecrire dans un autre fichier

  18. #18
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    171
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 171
    Points : 80
    Points
    80
    Par défaut
    merci j'ai fermé cette fiche et j'avais ouvert une autre dans laquelle je suis plus precis. j'avais fournis un code qui ne marche pas comme je veux et je sollicite l'aide pour le faire marcher...

    Merci
    -----------------------
    Cordialement
    Developpeur82

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lire, comparer et modifier 2 fichiers texte
    Par jojo57 dans le forum Langage
    Réponses: 9
    Dernier message: 16/04/2009, 15h58
  2. [vb.net] Modifier un fichier texte
    Par olbi dans le forum Windows Forms
    Réponses: 2
    Dernier message: 06/10/2006, 15h31
  3. lire/ecrire dans un fichier texte
    Par mello dans le forum Entrée/Sortie
    Réponses: 9
    Dernier message: 13/06/2006, 12h35
  4. comment utiliser Notepad pour modifier un fichier texte?
    Par moon13_698 dans le forum Autres Logiciels
    Réponses: 7
    Dernier message: 06/05/2006, 15h41
  5. [AS400] Lire et modifier un fichier physique en C/S ?
    Par swirtel dans le forum Autres SGBD
    Réponses: 2
    Dernier message: 26/10/2005, 15h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo