fopenの出力する数字について
7 views (last 30 days)
Show older comments
fopenを連続で行うと出力の数字が増えていくのはなぜですか?
fileは毎回同じパス名です。
連続して同じパスをfopenはしませんが気になったので質問しました。
以下がその時の入出力です。
fid = fopen(file)
fid =
7
fid = fopen(file)
fid =
8
fid = fopen(file)
fid =
9
fid = fopen(file)
fid =
10
fid = fopen(file)
fid =
11
宜しくお願いします。
0 Comments
Accepted Answer
Etsuo Maeda
on 18 Feb 2019
同じファイルに対してfopen関数を実行した場合にfileIDの数字が増えるのは、fopen関数を実行するたびに異なるfileIDが割り振られているからです。
fopen関数の仕様では、fileIDはDouble型の整数になっています。
1と2は標準出力と標準エラー出力によって予約されているので、通常のfileIDは3以上の整数になっています。
なお、fopen関数によって開かれたすべてのfileIDを閉じるには、次の構文を使用します。
fclose('all')
また、OS側でいうところのfileIDは、例えばWindowsであれば、次の構文で確認することができます。
! fsutil file queryfileid <filename>
HTH
0 Comments
More Answers (0)
See Also
Categories
Find more on 低水準ファイル I/O in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!