當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Rust OpenOptions.append用法及代碼示例


本文簡要介紹rust語言中 std::fs::OpenOptions.append 的用法。

用法

pub fn append(&mut self, append: bool) -> &mut Self

設置附加模式的選項。

此選項為 true 時,意味著寫入將附加到文件而不是覆蓋以前的內容。請注意,設置 .write(true).append(true) 與僅設置 .append(true) 具有相同的效果。

對於大多數文件係統,操作係統保證所有寫入都是原子的:不會因為另一個進程同時寫入而導致寫入被破壞。

使用 append-mode 時可能有一個明顯的注意事項:確保在一次操作中將所有屬於一起的數據寫入文件。這可以通過在將字符串傳遞給 write() 之前連接字符串,或使用緩衝寫入器(具有足夠大小的緩衝區)並在消息完成時調用 flush() 來完成。

如果以讀取和附加訪問權限打開文件,請注意在打開後以及每次寫入後,讀取位置可能設置在文件末尾。因此,在寫入之前,保存當前位置(使用 seek(SeekFrom::Current(0)) ),並在下次讀取之前恢複它。

注意

如果文件不存在,此函數不會創建文件。使用 OpenOptions::create 方法執行此操作。

例子

use std::fs::OpenOptions;

let file = OpenOptions::new().append(true).open("foo.txt");

相關用法


注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 std::fs::OpenOptions.append。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。