MATLAB Function Reference    
fprintf

データを書式付きで書き出します。

表示

詳細

count = fprintf(fid,format,A,...) は、指定された文字列 format の制御下で、行列 A の実部データ(および、任意の追加的な行列引数内のデータ)を書式化し、識別子fid に関連するファイルに書き出します。fprintfは、書き出されたバイト数をカウントして出力します。

引数 fid は、fopenから得られる整数のファイル識別子です(標準出力(スクリーン)に対しては1、標準エラーに対しては 2 です。詳細については、fopen を参照してください)。 fprintf の引数リストからfidを省略すると、出力はスクリーン上に表示され、標準出力(fid= 1)への書き出しと同様になります。

fprintf(format,A,...) は、標準出力、つまりスクリーン上へ書き出します。

文字列 format は、表記法、整列、有効桁、フィールド幅、その他の出力書式を指定します。通常、英数字、エスケープキャラクタ、変換指定子、その他のキャラクタを含んでおり、下記に示すように構成されます。

注意

関数 fprintf は、例外や拡張機能をもつ同名の ANSI C 言語の fprintf() と同様に機能します。

つぎの非標準のサブタイプ指定子は、変換指定子 %o, %u, %x, %X に対してもサポートされています。
b
C のデータタイプは、符号なしの整数よりもむしろ倍精度になっています。たとえば、倍精度値を16進で印刷する場合、'%bx' のようなフォーマットを使用します。

t
C データタイプは、符号なしの整数よりも浮動数です。
入力行列 A がスカラでない場合、fprintf は、ベクトル化しています。

フォーマット文字列は、要素がすべて使用されるまで、Aの要素を巡回します。付加的な行列引数を通して、再初期化なしで、同様に巡回します。

つぎのテーブルは、フォーマットの仕様を設定するノンパラメトリックなキャラクタを記述します。

エスケープキャラクタ

キャラクタ 
詳細
\b
バックスペース
\f
フォームフィード
\n
新しいライン
\r
キャレッジリターン
\t
水平タブ
\\
バックスラッシュ
\'' or ''
(two single quotes)
シングルコートマーク
%%
パーセントキャラクタ

変換指定子

変換指定子は、出力の記法を指定します。

指定子
詳細
%c
シングルキャラクタ
%d
小数点記法(符号付き)
%e
指数記法(3.1415e+00のように小文字のeを使用)
%E
指数記法(3.1415E+00のように大文字のEを使用)
%f
固定小数点記法
%g
[2]で定義するような %e、または、%f のよりコンパクトなもの。意味のないゼロは印刷されません。
%G
%g と同じですが、大文字をEを使います。
%o
8進法記法(符号なし)
%s
キャラクタの文字列
%u
小数点記法(符号なし)
%x
16進記法(小文字を使用 a-f)
%X
16進記法(大文字を使用 A-F)

他の特性

他のキャラクタを% と変換キャラクタの間の変換指定子の中に挿入できます。

キャラクタ
詳細
例題
マイナス記号 (-)
フィールド内で変換された引数を左寄せします。
%-5.2d
プラス記号 (+)
常に符号(+、または、-)を印刷します。
%+5.2d
ゼロ (0)
空きスペースをゼロで埋めます。
%05.2d
桁 (フィールド幅)
プリントする最小桁を指定する文字列です。
%6f
桁 (精度)
小数点の右側にプリントする桁数を指定する、ピリオド(.)を含んだ文字列です。
%6.2f

書式指定文字列についての詳細は、参考文献 にリストされているドキュメント内のルーチン printf()、または、fprintf() を参照してください。

例題

ステートメント

は、指数関数の短い表を含んだ、exp.txtをいうテキストファイルを作成します。

コマンド

は、スクリーン上に 1行を表示します。

文字列にシングルコートを挿入するためには、2つのシングルコートを使ってください。たとえば、

その結果は、スクリーン上につぎのように表示されます。

コマンド

は、つぎの表示を行います。

明示的に、整数変換指定子を使って、MATLABの倍精度変数を整数値に変換します。たとえば、符号付き32ビットデータを 16進書式に変換します。

参考

fclose, ferror, fopen, fread, fscanf, fseek, ftell, fwrite

参考文献

[1] Kernighan, B.W. and D.M. Ritchie, The C Programming Language, Second Edition, Prentice-Hall, Inc., 1988.

[2] ANSI specification X3.159-1989: "Programming Language C," ANSI, 1430 Broadway, New York, NY 10018.


 fplot fprintf (serial)