gpt4 book ai didi

c++ - 使用 cstdio 就地编辑文件?

转载 作者:太空宇宙 更新时间:2023-11-04 11:50:55 25 4
gpt4 key购买 nike

我有一个要写入数据的文件,使用 cstdio 中的函数。我想确保文件已成功写入文件而没有任何中断,因此我知道稍后读取文件时会从文件中得到什么。我打算这样做的方法是,首先将 8 个字节的清零数据写入文件的最开头,正常写入文件,然后作为最后一步,倒带文件并覆盖前 8 个字节一个特定的签名,表示该文件已完成且格式正确。

我的问题是,就地编辑前 8 个字节的最佳方法是什么?

对于 fopen(),应该使用什么合适的打开模式(第二个参数)?

只是 rewind() 到开头并使用 fwrite() 是否安全,或者是否有专门用于覆盖操作的特定函数?

最佳答案

WhozCraig 是对的。使用 wb+rewind 一样完全没问题。

您还可以查看文件锁定,它确保:

  • 当你持有独占锁时,没有人可以读/写文件
  • 当你持有共享锁时,没有人可以写文件

关于c++ - 使用 cstdio 就地编辑文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18286005/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com