En aquest tema, aprendrem com gestionar fitxers en MATLAB, incloent la lectura i escriptura de dades. La capacitat de manipular fitxers és essencial per a l'anàlisi de dades, la generació de resultats i la integració amb altres aplicacions.

Continguts

Introducció a l'Entrada/Sortida de Fitxers

MATLAB proporciona diverses funcions per a la manipulació de fitxers. Aquestes funcions permeten llegir dades des de fitxers, escriure dades a fitxers i manipular fitxers de text i binaris.

Conceptes Clau

  • Fitxers de Text: Fitxers que contenen dades en format llegible per humans.
  • Fitxers Binaris: Fitxers que contenen dades en format binari, sovint més eficients per a l'emmagatzematge i la lectura de grans volums de dades.

Lectura de Fitxers

Funció fopen

La funció fopen s'utilitza per obrir un fitxer. Retorna un identificador de fitxer que s'utilitza per a altres operacions de fitxer.

fid = fopen('data.txt', 'r'); % Obre el fitxer en mode lectura

Funció fclose

La funció fclose tanca un fitxer obert.

fclose(fid); % Tanca el fitxer

Funció fscanf

La funció fscanf llegeix dades des d'un fitxer obert.

fid = fopen('data.txt', 'r');
data = fscanf(fid, '%f'); % Llegeix dades en format de punt flotant
fclose(fid);

Escriptura de Fitxers

Funció fprintf

La funció fprintf s'utilitza per escriure dades a un fitxer.

fid = fopen('output.txt', 'w'); % Obre el fitxer en mode escriptura
fprintf(fid, 'Hola, món!\n'); % Escriu una línia de text
fclose(fid);

Lectura i Escriptura de Fitxers de Text

Exemple de Lectura de Fitxer de Text

fid = fopen('data.txt', 'r');
while ~feof(fid)
    line = fgetl(fid); % Llegeix una línia de text
    disp(line);
end
fclose(fid);

Exemple d'Escriptura de Fitxer de Text

fid = fopen('output.txt', 'w');
for i = 1:10
    fprintf(fid, 'Línia %d\n', i);
end
fclose(fid);

Lectura i Escriptura de Fitxers Binari

Funció fread

La funció fread llegeix dades des d'un fitxer binari.

fid = fopen('data.bin', 'rb');
data = fread(fid, 'double'); % Llegeix dades en format doble
fclose(fid);

Funció fwrite

La funció fwrite escriu dades a un fitxer binari.

fid = fopen('output.bin', 'wb');
fwrite(fid, data, 'double'); % Escriu dades en format doble
fclose(fid);

Exercicis Pràctics

Exercici 1: Lectura de Fitxer de Text

Llegeix el fitxer data.txt i mostra el seu contingut línia per línia.

Solució

fid = fopen('data.txt', 'r');
while ~feof(fid)
    line = fgetl(fid);
    disp(line);
end
fclose(fid);

Exercici 2: Escriptura de Fitxer de Text

Crea un fitxer output.txt i escriu les línies "Línia 1" a "Línia 10".

Solució

fid = fopen('output.txt', 'w');
for i = 1:10
    fprintf(fid, 'Línia %d\n', i);
end
fclose(fid);

Exercici 3: Lectura i Escriptura de Fitxer Binari

Llegeix un fitxer binari data.bin i escriu el seu contingut a un nou fitxer output.bin.

Solució

% Lectura
fid = fopen('data.bin', 'rb');
data = fread(fid, 'double');
fclose(fid);

% Escriptura
fid = fopen('output.bin', 'wb');
fwrite(fid, data, 'double');
fclose(fid);

Conclusió

En aquesta secció, hem après com gestionar fitxers en MATLAB, incloent la lectura i escriptura de fitxers de text i binaris. Aquestes habilitats són fonamentals per a l'anàlisi de dades i la integració amb altres aplicacions. En el següent tema, explorarem la gestió de grans conjunts de dades en MATLAB.

© Copyright 2024. Tots els drets reservats