Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
File 检查是否已完成对文件的写入 我目前正在编写一个C++插件。对于我的功能,我要求API保存一个文件。API在写入文件时给我一个返回值。。。至少看起来是这样。问题是,这个返回值返回得太早,因此我无法确定文件是否已完全写入_File_Visual C++_Save - Fatal编程技术网

File 检查是否已完成对文件的写入 我目前正在编写一个C++插件。对于我的功能,我要求API保存一个文件。API在写入文件时给我一个返回值。。。至少看起来是这样。问题是,这个返回值返回得太早,因此我无法确定文件是否已完全写入

File 检查是否已完成对文件的写入 我目前正在编写一个C++插件。对于我的功能,我要求API保存一个文件。API在写入文件时给我一个返回值。。。至少看起来是这样。问题是,这个返回值返回得太早,因此我无法确定文件是否已完全写入,file,visual-c++,save,File,Visual C++,Save,是否可以独立于api检查文件的写入完整性?这是因为系统不会在请求时立即将数据写入磁盘,但仍会返回。在C中,你可以使用int FFLUP文件*Suffic,但是我不知道C++中如何实现。不完全是这样,即使我们重新读取文件,“验证”写入发生了,你仍然可以查看内核缓冲区。 < P>你可以比较原始缓冲区和你已经写入的字节为字节的文件,但我认为最好相信您的操作系统具有相应的fflush和fclose操作。如前所述,您可以使用fflush。您可以根据使用的是流类还是描述符来调用sync/fsync 哪个AP

是否可以独立于api检查文件的写入完整性?

这是因为系统不会在请求时立即将数据写入磁盘,但仍会返回。在C中,你可以使用int FFLUP文件*Suffic,但是我不知道C++中如何实现。

不完全是这样,即使我们重新读取文件,“验证”写入发生了,你仍然可以查看内核缓冲区。

< P>你可以比较原始缓冲区和你已经写入的字节为字节的文件,但我认为最好相信您的操作系统具有相应的fflush和fclose操作。

如前所述,您可以使用fflush。您可以根据使用的是流类还是描述符来调用sync/fsync

哪个API?操作系统API?流?C风格的文件操作?+1当然-这是答案。删除我的垃圾一个。看到这个页面的C++ I/O HM,我想我还不够清楚。我有一个应用程序,它通过插件API向我提供了告诉应用程序它应该保存当前文档的能力。一旦我这样做,我就会得到返回值,尽管它还没有完成文件的编写。这意味着保存文件的操作由应用程序完成。在我看来,这是应用程序中的错误或误解。但我必须对这一点进行编码。我正在考虑检查文件大小,看看它是否停止增长或类似的事情,尽管这很可怕。我认为可能有更好的方法。