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 :

sauvegarder une structure dans un fichier .mat


Sujet :

MATLAB

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    219
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 219
    Points : 97
    Points
    97
    Par défaut sauvegarder une structure dans un fichier .mat
    Bonjour,
    J'utilise cette commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      save('sauv.mat','strevt','-ASCII');
    pour sauvegarder ma sructure strevt dans le fichier sauv.mat et j'ai ajouté l'option ASCII pour voir le résultat.
    A priori, mon programme tourne sans problème, mais quand je cherche à ouvrir sauv.mat, je suis dirigée vers Access et je n'ai pas la possibilité d'ouvrir mon fichier avec Bloc Notes ou Worpad. De plus, le fichier fait 0 Ko, alors je me demande s'il y a quelque chose à afficher
    Ma strucure a deux champs, LATITUDE et LONGITUDE et voici par exemple ce que contient le champ LATITUDE :
    >> strevt( : ).LATITUDE

    ans =

    44.7927 44.6899 44.5114
    44.6297 44.5765 44.8222
    44.7829 44.5813 44.7152


    ans =

    43.2990 43.2550 43.2390
    43.3790 43.3200 43.3282
    43.2529 43.3669 43.3403
    43.4343 43.4169 43.3236
    43.2747 43.2710 43.3116


    ans =

    42.8541 43.0905 42.8569
    43.1059 42.8577 43.0419
    42.9708 43.0050 43.0610
    43.0997 42.9496 43.0601
    43.2747 43.2710 43.3116


    ans =

    42.6912 42.6799 42.7669
    42.6628 42.6715 42.7032
    42.6567 42.4160 42.4794
    42.6632 42.6342 42.6621
    43.2747 43.2710 43.3116
    Est-ce un simple problème d'affichage ou plutôt un problème dans ma sauvegarde?
    Merci

  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 309
    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 309
    Points : 52 901
    Points
    52 901
    Par défaut
    Tu ne peux pas sauvegarder une Structure dans un fichier texte avec SAVE comme tu l'as fait...

    Il faut faire par exemple comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    for n=1:numel(strevt)
        temp = strevt(n).LATITUDE;
        save('sauv.txt','temp','-ascii','-append');
    end

  3. #3
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Salut,

    Ou alors en utilisant l'option -STRUCT.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    219
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 219
    Points : 97
    Points
    97
    Par défaut
    Effectivement, ça va mieux avec la solution de Dut. Merci
    J'avais vu la commande -STRUCT mais je ne suis pas arrivée à l'utiliser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    newstruct.mat= -struct strevt;
    save ('sauv.mat','newstrevt.mat','-ASCII');
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    save ('sauv.mat','newstrevt.mat -struct strevt','-ASCII')
    Bref, j'arrive pas à m'en servir

  5. #5
    Expert éminent sénior
    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
    Points : 14 828
    Points
    14 828
    Par défaut
    Ce que tu veux faire n'est absolument pas clair.

    Pourquoi tiens-tu tellement à utiliser l'option -ASCII : elle ne sert qu' enregistrer au format texte.
    Quelle serait pour toi la représentation textuelle d'une structure ?

    Avec l'option -ASCII tu ne peux sauvegarder que des tableaux de numériques.

    Donc explique mieux ce que tu veux dans ton fichier de sauvegarde :

    • un ficher MAT (donc pas d'option -ASCII) ? avec quoi dedans ?
    • un fichier texte ? Formaté comment ?

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    219
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 219
    Points : 97
    Points
    97
    Par défaut
    Citation Envoyé par Caro-Line Voir le message
    Ce que tu veux faire n'est absolument pas clair.

    Pourquoi tiens-tu tellement à utiliser l'option -ASCII : elle ne sert qu' enregistrer au format texte.
    Quelle serait pour toi la représentation textuelle d'une structure ?

    Avec l'option -ASCII tu ne peux sauvegarder que des tableaux de numériques.

    Donc explique mieux ce que tu veux dans ton fichier de sauvegarde :

    • un ficher MAT (donc pas d'option -ASCII) ? avec quoi dedans ?
    • un fichier texte ? Formaté comment ?
    Je voulais utiliser -ascii car c'est la 1ère fois que je sauvegarde des variables dans un fichier et donc je voulais voir ce que j'enregistrais, ce qui n'est pas facile quand on ne peut pas lire les données.
    Cependant, maintenant que j'ai vu que ça enregistrait bien ce que je voulais, je n'ai plus besoin de cette option.

    Je veux simplement sauvegarder cette structure puisque ça va m'éviter de faire tourner mon programme plusieurs fois, sachant que le temps d'éxecution est de plusieurs heures. Je vais réutiliser cette structure dans matlab par la suite, en ouvrant mon fichier sauv, donc je n'ai pas vraiment besoin de l'avoir en fichier texte. Je pense que l'une ou l'autre extension convient à ce que je veux faire.

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

Discussions similaires

  1. Réponses: 17
    Dernier message: 09/03/2007, 18h13
  2. [ImageMagick] Sauvegarder une image dans un fichier
    Par kivan666 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 15/12/2006, 12h28
  3. stocker une structure dans un fichier ini?
    Par Mickey.jet dans le forum C
    Réponses: 6
    Dernier message: 13/09/2006, 16h57
  4. copier une structure dans un fichier
    Par brute dans le forum MFC
    Réponses: 18
    Dernier message: 10/03/2006, 14h30
  5. Sauvegarder une surface dans un fichier
    Par Freakazoid dans le forum DirectX
    Réponses: 6
    Dernier message: 18/08/2002, 15h23

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