要判断文件是否被打开,可以通过以下几种方法:
- 使用CFile类的IsOpen()函数:可以通过CFile对象的IsOpen()函数来判断文件是否被打开。
CFile file; if (file.Open(_T("file.txt"), CFile::modeRead)) { // 文件已经被打开 } else { // 文件未被打开 }
- 使用文件句柄:可以通过文件句柄来判断文件是否被打开。
HANDLE hFile = CreateFile(_T("file.txt"), GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); if (hFile != INVALID_HANDLE_VALUE) { // 文件已经被打开 CloseHandle(hFile); } else { // 文件未被打开 }
- 使用文件流对象:可以通过文件流对象来判断文件是否被打开。
ifstream file("file.txt");
if (file.is_open()) {
// 文件已经被打开
file.close();
} else {
// 文件未被打开
}
以上方法都可以判断文件是否被打开,可以根据自己的需求选择合适的方法。