WriteFile丢数据

极速小王子 2011-04-08 10:26:43
我做了个程序,功能如下:

读文件(ReadFile)->读入缓存->加密->将缓存写入(WriteFile)另一个文件

加密文件比原文件大256个字节,但实际情况是,加密文件丢失了不少数据。

我在加密一个 660,828,160 字节 的文件时,加密出来的文件只有400多MB,大约73%。我试了关闭缓存、FileFlushBuffer都无法写全数据。

各位有遇到这种情况没?如何解决?
...全文
157 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
极速小王子 2011-12-22
  • 打赏
  • 举报
回复
问题已经解决了,磁盘空间满了
CppFile 2011-04-08
  • 打赏
  • 举报
回复
楼主的加密算法是自己写的?

那么在文件写入的时候,观察下返回值,看到底函数写入了多少字节啊!如果没写完,继续写啊
极速小王子 2011-04-08
  • 打赏
  • 举报
回复
加密后的文件应该比原文件大256字节。

如果加密后文件比原文件都还小,那肯定解密不出来了
CppFile 2011-04-08
  • 打赏
  • 举报
回复
有些加密算法,是等长的,有些则不是
CppFile 2011-04-08
  • 打赏
  • 举报
回复
楼主的意思是,原文件660,828,160字节,加密后变为400多MB

这都不是问题,关键问题是,你从加密后的文件解密出来,是不是原文件?
ccrun.com 2011-04-08
  • 打赏
  • 举报
回复
这取决于你的加密方式.

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧