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 :

[textscan] Lire des blocs de données


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 4
    Par défaut [textscan] Lire des blocs de données
    Bonjour à tous,

    J'ai un gros fichiers texte dont je dois récupérer certaines données:

    [...]
    SET COLOR WHITE
    PLOT AXIS
    SET COLOR RED
    -2.1595D+02 4.0199D+02;-2.2435D+02 3.4904D+01;-2.2132D+02 -7.7269D+01;
    -2.0938D+02 -2.2098D+02;-2.3127D+02 -6.8293D+01;-2.1963D+02 1.3952D+01;
    -2.2553D+02 2.2824D+02;-2.3117D+02 -4.7338D+01;-2.3376D+02 3.9478D+02;
    -2.2075D+02 -5.3211D+01;-2.2230D+02 -1.4274D+02;-2.2471D+02 -1.8660D+02;
    -2.3532D+02 1.2231D+02;-2.2855D+02 1.6657D+02;-2.1947D+02 1.6641D+02;
    -2.3791D+02 8.2551D+01;-2.1599D+02 9.2667D+01;-2.2255D+02 -7.2874D+01;
    -2.3208D+02 1.3296D+02;-2.2966D+02 1.3130D+02;-2.2738D+02 2.3932D+02;
    -2.2777D+02 2.7558D+02;-2.2601D+02 3.6503D+02;-2.0408D+02 -4.8465D+01;
    -2.4091D+02 -2.8784D+01;
    PLOT
    SET COLOR WHITE
    [...]
    quelques lignes en headers puis des coordonnées de point x et y séparées par un ';'
    ce schéma se reproduit un grand nombre de fois dans un même fichier
    Mon but est de récupérer dans une cellule les coordonnées x et y pour chaque bloc
    J'ai essayé plusieurs choses avec textscan, mais rien n'a fonctionné comme je le voulais.

    Ma dernière idée est de dire d'arrêter le scan lorsque le fichier rencontre un caractère lettre (ou rencontre le mot PLOT) mais je n'ai toujours pas trouver comment faire ça, parce que apparemment pour endOfLine on ne peut pas même grand chose
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    D2=textscan(data2,'%n %n','headerlines',21,'delimiter',';','endOfLine','??');
    Y'aurait-il une autre façon de faire ça, sachant que mon fichier est assez lourd, il faut donc éviter les traitements trop long

    Merci pour vos réponses :-)

  2. #2
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    Le 'endOfLine' ne résoudrait rien je pense.
    Tu peux tenter quelque chose de ce style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    data2=fopen('texte.txt');
    D2=textscan(data2,'%s','delimiter','');
    fclose(data2)
    res=D2{1};
    Mat=[];
    for k=1:length(res)
        tmp=str2num(res{k});
        if ~isempty(tmp)
            Mat=[Mat;tmp];
        end
    end

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 4
    Par défaut
    merci :-)
    J'ai ajouté quelques boucles dans ton scripte et ça fait ce que je veux maintenant

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

Discussions similaires

  1. Trier et Filtrer des blocs de données sur Excel
    Par Alistair-man dans le forum Conception
    Réponses: 5
    Dernier message: 04/10/2009, 16h48
  2. Extraire des blocs de données dans un fichier. AWK?
    Par oliverjack dans le forum Linux
    Réponses: 2
    Dernier message: 25/06/2009, 19h56
  3. Définir des relations entre des blocs de données
    Par jeunot0108 dans le forum Forms
    Réponses: 7
    Dernier message: 18/07/2007, 14h56
  4. [Excel] Lire des données de excel avec php
    Par Eisy dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 09/03/2006, 17h00
  5. CFile : comment lire des données
    Par romeo9423 dans le forum MFC
    Réponses: 3
    Dernier message: 25/10/2004, 19h10

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