1

ファイルからデータを転送するこの関数を開発しerlangました。.txt

exporttxt()->

F1 ="1",
F2 = "afif",
F3 = "kaled",

file:write_file("test.txt",[io_lib:format("~p\t~p\t~p~n",[F1,F2,F3])] ).

この関数を実行すると、test.txt次の値が含まれます。

"1" "afif" "kaled"

しかし、私が変更するF1F2F3関数exporttxt()で次のようになります。

F1 ="2"
F2 ="ahmed"
F3 = "alagi"

次に、test.txtこれらの値のみが含まれます。

"2" "ahmed" "alagi"

そして、私は含めたいtest.txt:

"1"  "afif"  "kaled"
"2"  "ahmed" "alagi"

問題は、関数を実行するたびに新しいデータが記録され、古いデータtest.txtが削除されることです。

test.txt既存のデータを上書きせずに新しいデータを書き込むにはどうすればよいですか?

4

1 に答える 1

4

この点にはfile:write_file/3を使用します。

3番目の引数はModesです。可能なモードのリストが読み取られます| write | append | exclusive | raw | binary | {delayed_write, Size, Delay} | delayed_write | {read_ahead, Size} | read_ahead | compressed | {encoding, Encoding}appendモードはあなたのニーズに合っています。

于 2013-03-14T12:48:45.253 に答える