许多操作系统都具有特定的文件打开模式,其中写入始终写入文件的末尾.Java可以使用它将数据附加到文件的末尾.
例如,open()内核API函数的手册页可以接受O_APPEND标志:
O_APPEND append on each write
Opening a file with O_APPEND set causes each write on the file to be
appended to the end.
Run Code Online (Sandbox Code Playgroud)
写入文件末尾的另一种方法是lseek()使用SEEK_END子函数首先到文件的末尾(参见lseek(2)手册页).对文件的新写入将出现在当前文件指针的位置.
但是,lseek()如果这些方法尝试写入相同的偏移量,则该方法可能会导致两个不同的写入器覆盖彼此的数据.因此,通常使用第一种方法打开日志文件等文件.从来没有任何理由将数据写入除日志之外的任何地方的日志文件.
| 归档时间: |
|
| 查看次数: |
2687 次 |
| 最近记录: |