comment lire des fichiers txt en boucle sous Matlab - Programmation
 

Ajouter une réponse



 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : comment lire des fichiers txt en boucle sous Matlab
 
Profil : IDNaute
Plus d'informations

Bonjour.
 
Donc voila, j'ai un pb: j'ai deux cent fichiers textes a lire et pour chaque fichier il y a deux colonnes de dimension identique pour le mm fichier mais variable d'un fichier a l'autre. Et mon job serait de lire pour chaque fichier la derniere ligne de ma deuxieme colonne.
 
Pour l'instant j'ai reussi a afficher sous Matlab la bonne valeur mais pour un seul fichier texte :
 
k=3;
a=dlmread('cdn16002a0m8.txt','\t',k,0);
n=size(a);
n(1);
b=dlmread('cdn16002a0m8.txt','\t',n(1)-1+k,1);
b(1)
 
Mnt j'aimerais faire une boucle sur tous mes fichiers textes comme un truc de ce genre:
 
for i=0:5
     for j=6:14
         k=3;
         a=dlmread('cdn16002aimj.txt','\t',k,0);
         n=size(a);
         n(1);
         b=dlmread('cdn16002aimj.txt','\t',n(1)-1+k,1);
         b(1)
     end
end
 
Mais bien evidemment ca ne marche pas car Matlab cherche a ouvrir sur mon disque un fichier qui s'appelle 'cdn16002aimj' ...
 
Si quelqu'un a une idee!
 
Merci d'avance
 
Pascal

Liens

Profil : IDNaute
Plus d'informations

Matlab ne me parait pas le plus approprié pour ce genre de programme, mais passons ;)
 

Code :
  1. a=dlmread(   strcat('cdn16002aim',num2str(j),'.txt')  ,'\t',k,0);


Il faut d'abord convertir Le nombre contenu dans j en chaîne de caractères, puis, il faut concaténer toutes les chaînes de caractères.
 
http://www-ccs.ucsd.edu/matlab/tec [...] oup16.html


Message édité par CRicky le 19-03-2007 à 19:34:08

---------------
B800A0 8EC0 B400 B013 CD10 B91000 BA1000 B005
E81000 B407 CD21 B400 B003 CD10 B44C B000 CD21
50 89D0 BB4001 F7E3 89C7 01CF 58 26 8805 C3
Profil : IDNaute
Plus d'informations

Merci CRicky.
 
Je vais essayer de voir ca. Je te tiens au courant  :)  
 
Pascal
 
PS: pour ce genre de pg, tu me conseillerais quoi au lieu de Matlab?

Profil : IDNaute
Plus d'informations

Re bonjour.
 
Je n'y arrive pas, j'ai du mal a utiliser la fonction num2str et strvcat. A chaque fois, Matlab dit que je n'utilise pas comme il faut la fonction dlmread.
 
Si quelqu'un pourrait m'aider un peu plus, ce serait super sympa.
 
Pascal

Profil : IDNaute
Plus d'informations

C'est strcat pas strvcat.
Peux-tu montrer ce que tu as mis ?
 
ps: pour le langage, je pense qu'un langage classique comme le C serait plus performant


---------------
B800A0 8EC0 B400 B013 CD10 B91000 BA1000 B005
E81000 B407 CD21 B400 B003 CD10 B44C B000 CD21
50 89D0 BB4001 F7E3 89C7 01CF 58 26 8805 C3
Profil : IDNaute
Plus d'informations

Ah voila, je ne sais pas pourquoi j'essayais de corriger mon programme avec la fonction strvcat et non strcat.
 
Donc la ca marche! C'est niquel!    :)  
 
Merci beaucoup CRicky  :jap:  
 
Pascal

Profil : IDNaute
Plus d'informations

moi j ai un pb bcp plus complexe. en fait j ai un dossier qui contient 1400 fichier dont les noms ne releve aucune correspondance et je doit les lire un par donc je pense pas q on peut faire une boucle sur les noms. est ce que par exemple peut on lire d'un  dossier sur Matlab.
est ce que quelqu un peut m'aider.
 
Merci d avance.

Profil : IDNaute
Plus d'informations

si non tu fais un renomage de groupe qui ajoute un chifre croisant sur tes fichier text  
 
( ps : je suis un boulet mais au moin ma solution peut t'aider )  
 

Profil : IDNaute
Plus d'informations

sas_sabeur, c'est typiquement le genre de programme qui ne se fait pas avec matlab :)


---------------
B800A0 8EC0 B400 B013 CD10 B91000 BA1000 B005
E81000 B407 CD21 B400 B003 CD10 B44C B000 CD21
50 89D0 BB4001 F7E3 89C7 01CF 58 26 8805 C3
Profil : IDNaute
Plus d'informations

Merci pour votre aide mais il y a toujours de solution


Aller à :
Ajouter une réponse
  FORUM Infos-du-Net » Programmation » comment lire des fichiers txt en boucle sous Matlab
 

Liens