WriteFile 追加失败但总是覆盖

问题描述 投票:0回答:1
HANDLE hFile = CreateFile("test.txt", FILE_GENERIC_WRITE, FILE_SHARE_READ, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);

ULONG nWritten = 0;
WriteFile(hFile, "line-to-be-appened\r\n", strlen("line-to-be-appened\r\n"), &nWritten, NULL);

CloseFile(hFile);

当上面的代码片段打开一个现有的文件

test.txt
并且期望将
"line-to-be-appened\r\n"
追加到文件的末尾。但是,它只是覆盖文件。

我怎样才能让它追加到最后?

c++ append writefile
1个回答
0
投票

打开文件时,文件位置在文件开头。要追加,您需要在写入之前查找到文件末尾。

© www.soinside.com 2019 - 2024. All rights reserved.