Development Environment    

テキストファイルから文字列を1行ずつ読み込む

MATLAB には、書式付きテキストファイルから1行ずつ読み込み、文字列ベクトルに格納する操作を行う2つの関数 fgetl fgets を用意しています。この2つの関数は、ほぼ同一の機能を提供します。唯一の相違点は、fgets が改行キャラクタを文字列ベクトルにコピーしますが、fgetlはコピーしない、という点だけです。

以下のM-ファイル関数は、fgetlの使用例をデモンストレーションするものです。この関数は、fgetl を使って、ファイル全体を1行ずつ読み込みます。読み込んだそれぞれの行について、引数で指定された特定の文字列 (literal)が行の中に現れるかどうかをチェックします。

指定した特定の文字列が現れた場合には、この関数は行の中にliteralという文字列が現れた回数を表す数字を先ず印刷し、その後に行全体を印刷します。

この例では、badpoemと名付けた、つぎの入力データファイルをチェックします。

関数litcountを使って、このファイルに文字列'an'が何回現れるかを計算し、その結果と文字列を含む行全体を出力します。


 ファイル内の位置の制御 書式付きASCIIデータを読み込む