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

MATLAB Discussion :

Alterner remplacement d'une chaine de caractère dans un fichier texte


Sujet :

MATLAB

  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2015
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Alterner remplacement d'une chaine de caractère dans un fichier texte
    Bonjour, j'aurais besoin d'un petit coup de pouce. J'ai un fichier texte dans lequel apparait à plusieurs moment un marqueur appelé "R12".
    Je cherche à modifier le nom de celui-ci en alternant "R12_a" puis "R12_b" pour celui qui suit juste après, et ainsi de suite jusqu'à la fin du fichier. (J'espère que c'est assez clair ma phrase..)

    Pour l'instant j'ai ce code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    fid = fopen('data.txt','r');
       X = fread(fid);
    fclose(fid);
     
    X1 = strrep(X,'R12','R12_a');
    X2 = strrep(X,'R12','R12_b');
     
    fid = fopen('data.txt','w');
    fwrite(fid,X1);
    fclose(fid);
    J'arrive donc à modifier tous les R12 du fichier.

    Je pensais faire quelque chose comme ça pour en marquer un sur deux:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    fid = fopen('data.txt','w');
    fwrite(fid,X1);
    mettre une commande ici qui me permettrait de passer à la ligne suivante, pour ne pas rajouter la modif à la suite
    fwrite(fid,X2);
    fclose(fid);

    Merci de votre aide. Bonne journée!

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 318
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 318
    Points : 52 922
    Points
    52 922
    Par défaut
    Une idée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    fid = fopen('data.txt','r');
       X = fread(fid, [1, inf]);
    fclose(fid);
     
    idx = strfind(X, 'R12');
    X(idx(1:2:end)) = 'X';
     
    X = strrep(X,'R12','R12_b');
    X = strrep(X,'X12','R12_a');
     
    fid = fopen('data2.txt','w');
    fwrite(fid,X);
    fclose(fid);

Discussions similaires

  1. [AC-2010] Remplacer une chaine de caractères dans un fichier texte
    Par jpg75014 dans le forum VBA Access
    Réponses: 4
    Dernier message: 23/06/2015, 16h38
  2. Récupérer une chaine de caractères dans un fichier texte
    Par neutrall dans le forum Entrée/Sortie
    Réponses: 5
    Dernier message: 31/05/2011, 01h37
  3. Réponses: 1
    Dernier message: 05/11/2009, 16h19
  4. Remplacer une chaine de caractère dans un fichier texte.
    Par Empty_body dans le forum VBA Access
    Réponses: 1
    Dernier message: 19/01/2008, 12h16
  5. Réponses: 3
    Dernier message: 25/07/2006, 09h40

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