next up previous contents
suivant: Représentation graphique sous Matlab monter: Introduction au logiciel Matlab précédent: Tests   Table des matières

Lecture et écriture au clavier et dans des fichiers

On peut avoir à lire des données numériques ou alphanumériques dans un fichier, par exemple les conditions initiales d'un calcul ou un maillage qui a été généré par un autre programme. Inversement, on peut vouloir sauver le résultat d'un calcul, pour s'en servir ultérieurement dans Matlab  ou dans un autre programme.
M = dlmread('NomDeFichier','Delimiteur')
Lit des données numériques du fichier ASCII NomDeFichier, chaque nombre est séparé du suivant par le caractère Délimiteur ou par un retour à la ligne. La virgule et l'espace sont des délimiteurs par défaut.
[A,B,C,...] = textread('NomDeFichier','format')
Lit les variables avec le format spécifié jusqu'à épuisement du fichier. (Le nombre de variables à lire et le nombre de données dans le fichier doivent correspondre.)
fid=fopen('NomDeFichier')    % ouvre le fichier
A = fscanf(fid,format)       
[A,count] = fscanf(fid,format,size)
Lit les données avec le format spécifié. Un format est une chaine de caractères spécifiant en lecture le type de données à lire:
'%d' pour un entier
'%f' pour un réel
'%c'pour un caractère.
On peut éventuellement spécifier le nombre maximal de données à lire avec le paramètre size, et le paramètre de sortie count renvoie le nombre de données effectivement lues.

Pour écrire des résultats sur l'écran la méthode la plus simple et de taper le nom de la variable sans la faire suivre d'un point virgule. Si on veut un format plus lisible, en particulier, afficher plusieurs variables sur la même ligne, on peut utiliser la commande fprintf, comme dans l'exemple ci-dessous

a=1.5;
b=2;
fprintf('a = %f et b= %d',a,b);
  a =1.5 et b=2


Tableau 5: Les commandes d'entrée-sortie et les accès fichiers
dlmread('NomDeFichier','delimiteur') lecture du fichier
dlmwrite('NomDeFichier',M,'delimiteur') écriture de M dans le fichier
textread('NomDeFichier','format') lecture du fichier
fid=open('NomDeFichier') ouverture du fichier NomDeFichier
[A,count]=fscanf(fid,'format') lecture du fichier ouvert par open
fprintf(fid,'format',données) écriture des données avec un format
close(fid) fermeture
fprintf('format',données) écriture des données avec un format
fprintf('format',données) écriture des données avec un format



next up previous contents
suivant: Représentation graphique sous Matlab monter: Introduction au logiciel Matlab précédent: Tests   Table des matières
marie 2005-02-01