155GIT1 / 4. cvičení: Porovnání verzí

Z GeoWikiCZ
mBez shrnutí editace
mBez shrnutí editace
Řádek 4: Řádek 4:
== Náplň ==
== Náplň ==


# čtení dat z textového souboru do matice (ke stažení [http://geo102.fsv.cvut.cz/vyuka/155GIT1/data/cv3data.txt cv3data.txt])
# čtení dat z textového souboru do matice (ke stažení [http://athena.fsv.cvut.cz:8000/GIT1/cv4/predn4uk1.txt predn4uk1.txt])


== Ukázky ==
== Ukázky ==
Řádek 13: Řádek 13:


<source lang=octave>
<source lang=octave>
  fid = fopen('cv3data.txt','r');
  fid = fopen('predn4uk1.txt','r');
  bxy = fscanf(fid,'%f',[3,inf]);
  bxy = fscanf(fid,'%f',[3,inf]);
  bxy = bxy';    % pro shodné rozměry matice jako v datovém souboru
  bxy = bxy';    % pro shodné rozměry matice jako v datovém souboru

Verze z 7. 3. 2022, 10:19

Čtení formátovaných dat z textových souborů

Náplň

  1. čtení dat z textového souboru do matice (ke stažení predn4uk1.txt)

Ukázky

Formátované čtení dat

(čtení z textového souboru)

 fid = fopen('predn4uk1.txt','r');
 bxy = fscanf(fid,'%f',[3,inf]);
 bxy = bxy';    % pro shodné rozměry matice jako v datovém souboru
 fclose(fid);

 % přeskakování položek
 xy = fscanf(fid,'%*f %f %f',[2,inf]);
 xy = xy';

(čtení z řetězce)

 s = sscanf('10.2 5.222','%f %f')

Změna polohy kurzoru v souboru

 fid = fopen('s.txt','w');
 fprintf(fid,'%f\n',[1 2; 3 4]');
 fclose(fid);
 type s.txt
 1.000000
 2.000000
 3.000000
 4.000000

 fid = fopen('s.txt','r');
 a = fscanf(fid,'%f',[1, inf])
 b = fscanf(fid,'%f',[2, inf])  % kurzor je již na konci datového souboru s.txt
 fseek(fid,0,'bof');            % totožně fseek(fid,0,-1); anebo frewind(fid);
 b = fscanf(fid,'%f',[2, inf])
 fseek(fid,2,'bof');
 c = fscanf(fid,'%f',[2, inf])
 fclose all;

Úlohy