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 :

lecture plusieurs fichiers CSV


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2017
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2017
    Messages : 14
    Par défaut lecture plusieurs fichiers CSV
    Bonjour,

    Je réalise un GUI permettant de sélectionner puis de lire des fichiers CSV (contenant des mesures électriques) pour en faire des graphiques. Mon outil fonctionne très bien pour un fichier, seulement j'ai maintenant besoin de lire plusieurs fichiers (ou a la suite avec un nouveau bouton ?).

    J'utilise les fonctions uigetfile et fopen pour sélectionner le fichier. De plus, j'ai vu dans la doc la possibilité de choisir plusieurs fichiers :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fileName = uigetfile('*.csv', 'MultiSelect', 'on');
    Seulement, derrière je n'arrive pas à gérer le fid, j'utilise ce code pour un fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fid = fopen(fileName, 'r'); %get the fid for readCSVfile
    Or, fileName devient un tableau (1ligne, NbdeFichiers colonnes) et fopen ne veut pas ˝Error using fopen First input must be a file name of type char, or a file identifier of type double.˝ J'ai essayé en faisant une boucle (avec fileName(i) ) mais fopen me bloque encore. Car j'ai besoin du fid dans une fonction qui va stocker les données du fichier CSV.

    Merci pour la lecture

    Baptiste

    PS : je n'arrive pas a joindre de PJ via le site donc https://drive.google.com/open?id=0B0...jZ1dzdsZmI0VlE

  2. #2
    Membre émérite
    Avatar de soft001
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2008
    Messages
    409
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2008
    Messages : 409
    Par défaut
    Si tu sélectionnes plusieurs fichiers, fileName devient "cell". Donc, voici comment faire, il vaut mieux privilégier les Chemins absolus et pas relatifs:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    [FileName,PathName] = uigetfile('*.csv', 'MultiSelect', 'on');
    FileName = fullfile(PathName,FileName);
    L = numel(FileName);
    for i=1:L
    fid = fopen(fileName{i}, 'r'); %get the fid for readCSVfile
    ...
    end

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2017
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2017
    Messages : 14
    Par défaut
    Merci, ca fonctionne ! J'avais essaye mais en me trompant d'indice (i) au lieu de {i} ! Je comprends d'ou vient mon erreur.:oops:

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

Discussions similaires

  1. format temps
    Par JakBaptiste dans le forum MATLAB
    Réponses: 4
    Dernier message: 11/05/2017, 10h44
  2. Lecture de plusieurs fichiers csv avec R
    Par Korera dans le forum R
    Réponses: 1
    Dernier message: 06/03/2017, 17h20
  3. Réponses: 2
    Dernier message: 13/09/2014, 22h28
  4. Lecture de fichier au format XML ??
    Par nico0007 dans le forum Langage
    Réponses: 1
    Dernier message: 07/07/2005, 15h40
  5. Réponses: 8
    Dernier message: 06/07/2004, 14h17

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