int ReadFile(const char *filePath, char **content, int &nFileLen)
{
FILE *pF = NULL;
pF = fopen(filePath, "r");
if (pF == NULL) {
return -1;
}
fseek(pF, 0, SEEK_END); // 设置文件位置相对于文件末尾偏移0字节,即位置为文件末尾
nFileLen = ftell(pF); // 获取文件的当前位置,以字节为单位,应为当前位置已经处于文件末尾了,所有ftell的返回值就是文件的大小
rewind(pF); // 设置文件位置为文件开头
char *szBuffer = (char*)memalign(64, nFileLen);
if (!szBuffer)
{
fclose(pF);
return -1;
}
nFileLen = fread(szBuffer, sizeof(char), nFileLen, pF);
fclose(pF);
*content = szBuffer;
return 0;
}
相关文章
- 12-13第四十二个知识点:看看你的C代码为蒙哥马利乘法,你能确定它可能在哪里泄漏侧信道路吗?
- 12-13HTML5 大文件上传解决方案(500M以上)
- 12-13C++ Web Service SDK
- 12-13SpringBoot 大文件上传解决方案(500M以上)
- 12-13VS2010 win7 64位安装后新建项目生成时错误:LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
- 12-13python – 使用我自己的自定义二进制文件的NoSql?
- 12-13python-具有可执行权限的package_data文件
- 12-13C++ Primer 学习笔记_85_模板与泛型编程 --模板特化[续]
- 12-13core dump文件的生成
- 12-13c – NTP对分布式时间同步有多好?