fgets
ファイルからの行の読み込み、改行文字の維持
説明
例
ファイルを一度に 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);
入力引数
fileID
— ファイル識別子
整数
開いているファイルのファイル識別子。整数として指定します。fgets
を使用してファイルから 1 行を読み取る前に、fopen
を使用してファイルを開き、その fileID
を取得しなければなりません。
データ型: double
nchar
— 文字数
整数
次の行から読み取る文字数。整数として指定します。fgets
は次の行の最大 nchar
文字を返します。nchar
で指定された文字数に改行文字またはファイル終端マーカーを超える文字が含まれる場合、fgets
は改行文字またはファイル終端マーカーを超える文字は返しません。
データ型: double
出力引数
tline
— ファイル内の次の行
文字ベクトル | 数値スカラー
ファイル内の次の行。文字ベクトルまたは数値スカラーとして返されます。
ファイルが空ではない場合、
fgets
はtline
を文字ベクトルとして返します。ファイルが空でファイル終端マーカーのみがある場合、
fgets
はtline
を数値-1
として返します。
ltout
— 行終端子
整数
行終端子。整数として返されます。
0
から 65535
までの整数は Unicode® 文字に対応します。関数 char
を使用して、整数を、それに対応する Unicode 表現に変換できます。
ヒント
tline
には、改行文字またはファイル終端マーカー以降の文字は含まれません。fgets
は、ファイルに関連付けられたエンコード スキームを使用して文字を読み取ります。エンコード スキームを指定するには、関数fopen
を使用します。
拡張機能
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
使用上の注意事項および制限事項:
関数
fgets
がファイルの内容を読み取らない場合、生成コードはエラーを報告するか、-1 の代わりに空の値を返します。関数
fgets
が null バイトを読み取った場合、戻り値が打ち切られることがあります。
スレッドベースの環境
MATLAB® の backgroundPool
を使用してバックグラウンドでコードを実行するか、Parallel Computing Toolbox™ の ThreadPool
を使用してコードを高速化します。
この関数はスレッドベースの環境を完全にサポートしています。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
バージョン履歴
R2006a より前に導入R2022b: スレッドベースの環境での関数の使用
この関数はスレッドベースの環境をサポートしています。
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)