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 :

Attribuer le nom du fichier comme nom de variable


Sujet :

MATLAB

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 15
    Points : 13
    Points
    13
    Par défaut Attribuer le nom du fichier comme nom de variable
    Bonjour,

    Je voudrais faire la chose suivante:

    je cherche à récuperer automatiquement un fichier xls avec la commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    num = xlsread(filename, sheet)
    dont le nom num prenne automatiquement le meme nom que le nom du fichier xls ou de la feuille xls
    c'est à dire, un fichier xls apelé toto.xls dont les données sont automatiquement envoyées dans une variable du meme nom, toto.
    Sans, bien sur, écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    toto = xlsread('toto.xls')
    Merci d'avance pour vos réponse

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 62
    Points : 73
    Points
    73
    Par défaut
    Bonjour,

    Tu peux faire ca avec la commande eval ... eg.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    eval([filename ' = xlsread(' filename '.xls);' ]);

    par exemple


    Citation Envoyé par plobanalec78 Voir le message
    Bonjour,

    Je voudrais faire la chose suivante:

    je cherche à récuperer automatiquement un fichier xls avec la commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    num = xlsread(filename, sheet)
    dont le nom num prenne automatiquement le meme nom que le nom du fichier xls ou de la feuille xls
    c'est à dire, un fichier xls apelé toto.xls dont les données sont automatiquement envoyées dans une variable du meme nom, toto.
    Sans, bien sur, écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    toto = xlsread('toto.xls')
    Merci d'avance pour vos réponse

  3. #3
    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 830
    Points
    14 830
    Par défaut
    Quel est l'intérêt ?

    Une méthode propre serait de passer par les structures avec les champs dynamiques.
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    fichier = 'C:\truc\monfichier.xls';
    %Recuperation nom pour la "variable"
    [r,nomvar,ext]=fileparts(fichier);
    %La structure recup aura pour champ 'monfichier'
    %et recup.nomfichier contiendra le resultat
    recup.(nomvar) = xlsread(fichier);
    La façon sale et déconseillée est d'utiliser la fonction diabolique EVAL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    fichier = 'C:\truc\monfichier.xls';
    %Recuperation nom pour la "variable"
    [r,nomvar,ext]=fileparts(fichier);
    eval([nomvar,'=xlsread(fichier);'])
    [EDIT] Désolée SeByDocky, on a répondu quasi en même temps.
    Si on peut éviter d'utiliser EVAL il faut l'éviter.
    Il est très très très rare qu'il soit vraiment utile de l'utiliser.
    Règles du Forum

    Adepte de la maïeutique

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    62
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 62
    Points : 73
    Points
    73
    Par défaut
    Citation Envoyé par Caro-Line Voir le message
    Quel est l'intérêt ?

    Une méthode propre serait de passer par les structures avec les champs dynamiques.
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    fichier = 'C:\truc\monfichier.xls';
    %Recuperation nom pour la "variable"
    [r,nomvar,ext]=fileparts(fichier);
    %La structure recup aura pour champ 'monfichier'
    %et recup.nomfichier contiendra le resultat
    recup.(nomvar) = xlsread(fichier);
    La façon sale et déconseillée est d'utiliser la fonction diabolique EVAL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    fichier = 'C:\truc\monfichier.xls';
    %Recuperation nom pour la "variable"
    [r,nomvar,ext]=fileparts(fichier);
    eval([nomvar,'=xlsread(fichier);'])
    [EDIT] Désolée SeByDocky, on a répondu quasi en même temps.
    Si on peut éviter d'utiliser EVAL il faut l'éviter.
    Il est très très très rare qu'il soit vraiment utile de l'utiliser.


    Très juste remarque, je les utilise jamais également ...

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 15
    Points : 13
    Points
    13
    Par défaut
    Je vous remercie pour votre aide

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/09/2011, 10h37
  2. mettre la date comme nom du fichier
    Par tegleyt dans le forum Développement de jobs
    Réponses: 2
    Dernier message: 11/05/2011, 09h40
  3. Réponses: 8
    Dernier message: 06/11/2008, 08h35
  4. Utiliser une variable comme nom de fichier
    Par lo00_ dans le forum MATLAB
    Réponses: 1
    Dernier message: 28/06/2006, 13h57
  5. Réponses: 20
    Dernier message: 22/03/2005, 21h07

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