ファイルを開いて読み書きしようr+
としましたが、「r +」と「a +」はすべてstrをファイルの最後に追加します。a+
r+
では、との違いは何a+
ですか?
追加:
私は理由を見つけました:
ファイルオブジェクトを読みましたが、場所を先頭に設定するために seek(0) するのを忘れていました
ファイルを開いて読み書きしようr+
としましたが、「r +」と「a +」はすべてstrをファイルの最後に追加します。a+
r+
では、との違いは何a+
ですか?
追加:
私は理由を見つけました:
ファイルオブジェクトを読みましたが、場所を先頭に設定するために seek(0) するのを忘れていました
1 つの違いはr+
、ファイルが存在しない場合は作成されず、開くことができないことです。ただしa+
、ファイルが存在しない場合は作成されます。
で使用したことがある場合C
は、C で使用していたものとほとんど同じです。
関数のマンページからfopen()
: -
r+
: - 読み書き用に開きます。ストリームはファイルの先頭に配置されます。a+
: - 読み書き用に開きます。ファイルが存在しない場合は作成されます。ストリームはファイルの最後に配置されます。ファイルへの後続の書き込みは、介在する fseek(3) などに関係なく、常にその時点でのファイルの終わりで終了します。