gpt4 book ai didi

c - 用 O_RDWR 打开——如何覆盖?

转载 作者:太空宇宙 更新时间:2023-11-04 07:37:12 24 4
gpt4 key购买 nike

我想读取一个文件并更改其内容并将其写回文件。

我使用 open 读取文件如下:

bfd = open(m_file_name.c_str(), O_RDWR)

但是当我写的时候,它有点像附加到旧的。我怎样才能覆盖它?

最佳答案

您可以使用lseek(2)

bfd = open(m_file_name.c_str(), O_RDWR);
// read your file
lseek(bfd, 0, SEEK_SET);
// do whatever manipulation & write file

如果您的文件现在比原始文件小,您需要将大小截断为新大小,否则您将在文件末尾保留旧文件末尾的字节。如果它更大,文件应该会在您写入时自动增长。

关于c - 用 O_RDWR 打开——如何覆盖?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7801315/

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