首页 > 代码库 > C++文件操作,判断两个文件内容是否相等(被修改)
C++文件操作,判断两个文件内容是否相等(被修改)
思路:
方法1:MD5校验文件内容。
方法2:获取文件最后修改时间。
这里介绍方法1
下载MD5类库
1、头部引用:
#include "lib/md5.cpp"
2、自己写成一个function,param输入文件路径,return md5字符串
string compare(string folder1){ string fileName = folder1,content,str; unsigned int buf_size=1000000; //1M ifstream file(fileName); if(!file){cout << "open file error" <<endl; return 0;} while (!file.eof()) { string temp; file>>temp; content += temp; if (content.size() >= buf_size) //这里判断当前已获取的文件内容,如果大于buf_size就先把已获取的内容转换成md5字符串, { //避免内容过大占内存 MD5 md5(content); str = md5.md5(); content = str; } } MD5 md5(content); str = md5.md5(); file.close(); return str;}
3、调用
int main (){ string folder_1a = "e:\\vs2012\\file\\folder1\\a.csv"; string str_1a = compare(folder_1a); cout<<str_1a<<endl;}
C++文件操作,判断两个文件内容是否相等(被修改)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。