Octave lire ecrire plusieurs fichiers

Résolu/Fermé
Tina - 26 août 2011 à 11:46
 Tina - 26 août 2011 à 14:03
Bonjour,
j'ai 41 fichiers dans un dossiers, je vudrais pour chaque fichier extraire le 3ere col et l'écrire dans un autre fichier .
j'ai réussi pour un seul fichier:

clear all
close all
clc
format long
Donnees= load("Don1.txt");
x=Donnees(:,3)';
Fich_pts=[x];
fid = fopen('New_Don1.txt','at');
fprintf(fid,'%12.3f \n',Fich_pts');
fprintf(fid,'%s\n');
fclose(fid);

Mais franchement je sais pas trop comment faire une boucle pour les 41 fichiers.
Qqn a un peu de temps pour m'aider?
Merci d'avance
A voir également:

1 réponse

Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 298
26 août 2011 à 12:06
salut.
un truc dans le genre devrais aller :
clear all
close all
clc
format long
for n=1:41
  Donnees= load(["Don",num2str(n,3),".txt"]);
  x=Donnees(:,3)';
  Fich_pts=[x];
  fid = fopen(["New_Don",num2str(n,3),".txt"],'at');
  fprintf(fid,'%12.3f \n',Fich_pts');
  fprintf(fid,'%s\n');
  fclose(fid); 
end
2
Merci bien pour la reponse, ca marche!!!!
0
Mais si les noms des fichiers sont differents, par exemple Don1, Don2, Mes1,,...
est ce qu'il y a un moyn pour le dire de prendre tous les fichiers ??
Désolée de te déranger;
0
Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 298
26 août 2011 à 13:48
oui, mais c'est beaucoup plus chiant. Il faut faire une espèce de ls, puis récupérer ça, le modifier etc.
0
ok , merciii
0