Matlab Read Text File Line By Line
Matlab Read Text File Line By Line

Lorsque vous travaillez avec des fichiers texte en Matlab, il est souvent nécessaire de lire le contenu du fichier ligne par ligne. Cela peut sembler une tâche simple, mais si vous ne savez pas comment le faire correctement, cela peut causer des problèmes dans votre programme. Dans cet article, nous allons vous montrer comment lire un fichier texte ligne par ligne en Matlab.

La fonction fgets()

La fonction fgets() est utilisée pour lire une ligne entière à partir d’un fichier texte. Voici la syntaxe de la fonction:

s = fgets(fid)

où fid est l’identificateur de fichier retourné par la fonction fopen() et s est la chaîne de caractères lue à partir du fichier. Il est important de noter que la fonction fgets() inclut les caractères de fin de ligne dans la chaîne retournée. Ainsi, si vous voulez supprimer les caractères de fin de ligne, vous devez utiliser la fonction strtrim().

Exemple 1: Lire un fichier texte ligne par ligne

Voici un exemple simple qui lit un fichier texte ligne par ligne à l’aide de la fonction fgets():

fid = fopen('nom_du_fichier.txt', 'r');

tline = fgets(fid);

while ischar(tline)

    disp(tline)

    tline = fgets(fid);

end

fclose(fid);

Dans cet exemple, nous avons ouvert le fichier texte en mode lecture (‘r’) et avons ensuite utilisé une boucle while pour lire chaque ligne du fichier à l’aide de la fonction fgets(). La boucle while continue à lire chaque ligne jusqu’à ce que la fin du fichier soit atteinte.

La fonction textscan()

La fonction textscan() est une fonction puissante de Matlab qui peut être utilisée pour lire des fichiers texte de manière plus avancée. La fonction est capable de lire des fichiers texte avec des délimiteurs personnalisés et peut également convertir les données lues en différents types de données, tels que des nombres ou des dates. Voici la syntaxe de la fonction textscan():

C = textscan(fid,formatSpec)

où fid est l’identificateur de fichier retourné par la fonction fopen() et formatSpec est le format spécifié pour la lecture des données.

Exemple 2: Lire un fichier texte avec textscan()

Voici un exemple qui utilise la fonction textscan() pour lire un fichier texte avec des délimiteurs personnalisés:

fid = fopen('nom_du_fichier.txt', 'r');

C = textscan(fid, '%s %f %f %f', 'Delimiter', ',');

fclose(fid);

Dans cet exemple, nous avons spécifié que les données dans le fichier texte sont séparées par des virgules à l’aide de l’option Delimiter. Nous avons ensuite spécifié le format des données que nous voulons lire à l’aide de la chaîne de format ‘%s %f %f %f’. Cette chaîne spécifie que nous voulons lire une chaîne de caractères suivie de trois nombres à virgule flottante.

Lire un fichier texte ligne par ligne en Matlab peut sembler une tâche simple, mais cela peut causer des problèmes si vous ne savez pas comment le faire correctement. Dans cet article, nous avons discuté de deux méthodes pour lire un fichier texte ligne par ligne en Matlab: la fonction fgets() et la fonction textscan(). En utilisant ces méthodes, vous pouvez facilement lire des fichiers texte dans votre programme Matlab.