检查文件是否在 C++ 中是只读的
Check if a file is readonly in c++
我想在 windows 系统
的 c++ 中检查 .ini 文件是否只读
例如:
if(file == readonly){
//Do this
}
到目前为止我已经尝试过这个并且它有效:
ofstream ofs(filename); //test to see if the file successfully opened for writing or not
但结果是它会删除 .ini 文件并将文件留空
PS:
1.it 不是重复的
2. 我在整个互联网上进行了搜索,发现了一些可能有效的示例,但结果没有按预期编译。
如果您使用 Windows,您可以使用:
DWORD attr = GetFileAttributes(filename);
if (attr != INVALID_FILE_ATTRIBUTES) {
bool isReadOnly = attr & FILE_ATTRIBUTE_READONLY;
}
我想在 windows 系统
的 c++ 中检查 .ini 文件是否只读例如:
if(file == readonly){
//Do this
}
到目前为止我已经尝试过这个并且它有效:
ofstream ofs(filename); //test to see if the file successfully opened for writing or not
但结果是它会删除 .ini 文件并将文件留空
PS: 1.it 不是重复的 2. 我在整个互联网上进行了搜索,发现了一些可能有效的示例,但结果没有按预期编译。
如果您使用 Windows,您可以使用:
DWORD attr = GetFileAttributes(filename);
if (attr != INVALID_FILE_ATTRIBUTES) {
bool isReadOnly = attr & FILE_ATTRIBUTE_READONLY;
}