c语言中如何显示复制的文件内容以验证数据的正确性?

如题所述

c语言的 fprintf 等语句,当输出成功时,它的返回值 就是 正确写出的字符个数。若输出发生错误,返回值为负,可利用 ferror 查找错误。
用 fprintf 输出时,另加一句 printf, (格式和参数 与 fprintf 类似),就可在屏幕上显示输出的 内容。
假定要复制的文件名是a.dat,复制出的文件名是b.dat,
c语言 用 system("type a.dat"); 和 system("type b.dat"); 显示 两个文件。
最精确的,最时髦的,对比复制前后的文件 是否正确,可以用 “区块链”里的 技术,获取文件的“水印”-- “哈希码”。
system("CertUtil -hashfile a.dat SHA512 > hx_a.dat"); //输出 a.dat 的哈希码,存入hx_a.dat
system("CertUtil -hashfile b.dat SHA512 > hx_b.dat"); //输出 b.dat 的哈希码,存入hx_b.dat
然后 对比 hx_a.dat 和 hx_b.dat 即可,这样可以 确认复制 100% 正确。
SHA512 哈希码长度 512字节,你也可以选其它格式。(查 windows系统自带 的 CertUtil.exe 的使用说明。)
温馨提示:答案为网友推荐,仅供参考
相似回答