next up previous contents
Next: 文字列 Up: プログラミング Previous: fprintf

fscanf

octave:104> a
a =

   1   3   5   7   9

octave:107> [fid, msg] = fopen("test2.dat", "w", "native");
octave:108> fprintf(fid, "%d\n", a);
octave:109> fclose(fid);
octave:110> [fid, msg] = fopen("test2.dat", "r", "native");
octave:111> [val, count] = fscanf(fid, "%d");
octave:112> val
val =

  1
  3
  5
  7
  9
上において, fprintf 文で改行 「\」を忘れると,
val = 13579
となるので注意しよう.

次にセクション [*] で作ったファイル ``test.dat'' を読み込んで みよう.

octave:34> [fid,msg]=fopen("test.dat", "r", "native");
octave:35> [val count] = fscanf(fid, "%f",[2,Inf]);
octave:36> fclose(fid);
octave:37> val
val =

 Columns 1 through 8:

  1.00000  1.10000  1.20000  1.30000  1.40000  1.50000  1.60000  1.70000
  0.84147  0.89121  0.93204  0.96356  0.98545  0.99750  0.99957  0.99167

 Columns 9 through 11:

  1.80000  1.90000  2.00000
  0.97385  0.94630  0.90930
これを変形して, 下の段のデータのみをベクトルにしよう.
octave:39> u=val(2,:)'
u =

  0.84147
  0.89121
  0.93204
  0.96356
  0.98545
  0.99750
  0.99957
  0.99167
  0.97385
  0.94630
  0.90930



Toru Sasaki
2001-07-23