我正在使用WMWriterAdvanced和WriteStreamSample函数将视频数据写入ASF文件,如果在写入样本的过程中出现电源故障,它会导致我失去了大约20秒已经写入此文件的时间。在使用ASFView检查文件后,我注意到最后500个数据包只填充了零字节。我知道在停电期间可能会丢失一些数据,但看起来20秒的视频太多了。
为什么已经写入的样本被破坏了,是否可以减少它的数量?
发布于 2014-04-25 00:59:40
可能的原因是,由于文件仍处于打开状态并被写入,内部文件缓冲区尚未刷新到磁盘,电源故障导致此数据以及部分结构/索引数据的数据丢失。损坏的文件结构可能是无法看到文件中存在的部分数据,但不正确地链接到其余内容的原因之一-因此意外地丢失了太多秒的数据。
NTFS文件系统备份的文件通常在断电导致数据无法到达永久介质的碎片上具有零。
https://stackoverflow.com/questions/23275151
复制相似问题