是否有任何开源文件 IO 库或 C++ 中的简单方法可以报告文件 IO 的详细和准确错误。举些例子; 如果用户没有读取或正确权限 - 或者磁盘已满等。
问问题
125 次
1 回答
0
C 样式文件操作默认执行此操作,您只需要在文件操作调用不成功后包含cerrorno
和cstring
使用:strerror
hFile = fopen(fname, "r+b");
/*-- attempt to create the file if we can't open it for reading --*/
if(!hFile) {
/*-- print out relevant error information --*/
printf("Open File %s Failed, %s\n", fname, std::strerror(errno));
return 1;
}
return 0;
当然,如果您使用 C 风格的文件操作。我认为 ifstream 在大多数编译器上也支持这些。
请注意,此功能在某些实现上不是线程安全的。strerror_r
linux上有线程安全的。
于 2013-09-24T01:13:13.713 回答