Main Content

fgetl

ファイルからの行の読み込み、改行文字の削除

説明

tline = fgetl(fileID) は改行文字を削除して、指定されたファイルの次の行を返します。

  • ファイルが空ではない場合、fgetltline を文字ベクトルとして返します。

  • ファイルが空でファイル終端マーカーのみがある場合、fgetltline を数値 -1 として返します。

すべて折りたたむ

まず改行文字を除外して、次に改行文字を含めて、ファイルから 1 行を読み取ります。次のファイルを使用します。

ファイル badpoem.txt から最初の行を読み取るには、fopen を使用してファイルを開きます。次に、改行文字を除外する fgetl を使用して、最初の行を読み取ります。

fid = fopen('badpoem.txt');
line_ex = fgetl(fid)  % read line excluding newline character
line_ex = 
'Oranges and lemons,'

ファイルの同じ行を再び読み取るには、まず読み取り位置指定子をファイルの先頭に戻します。

frewind(fid);

改行文字を含めて行を読み取る関数 fgets を使用して、ファイル badpoem.txt から最初の行を読み取ります。

line_in = fgets(fid) % read line including newline character
line_in = 
    'Oranges and lemons,
     '

関数 fgetl および関数 fgets で返された行の長さを調べることにより、出力を比較します。

length(line_ex)
ans = 19
length(line_in)
ans = 20

fgetl の返した出力は 1 行に表示されますが、fgets の返した出力は改行文字を含むため、2 行に表示されます。

line_ex
line_ex = 
'Oranges and lemons,'
line_in 
line_in = 
    'Oranges and lemons,
     '

ファイルを閉じます。

fclose(fid);

入力引数

すべて折りたたむ

開いているファイルのファイル識別子。整数として指定します。fgetl を使用してファイルから 1 行を読み取る前に、fopen を使用してファイルを開き、その fileID を取得しなければなりません。

データ型: double

ヒント

  • fgetl は、ファイルに関連付けられたエンコード スキームを使用して文字を読み取ります。エンコード スキームを指定するには、関数 fopen を使用します。

  • fgetl は、ASCII 文字を 0A 0D (ライン フィードの後にキャリッジ リターン) の順に検出すると、それらの文字を単一の ASCII 改行文字として読み取ります。

拡張機能

バージョン履歴

R2006a より前に導入

すべて展開する