try
  {
    CString strText;
    strText.Format("%d,%s%s", iFacIndex, strTime, strValue);
    if (GetFileAttributes("data.txt") == INVALID_FILE_ATTRIBUTES)
    {
      HANDLE hOpenFile = CreateFileA(_T("data.txt"),GENERIC_WRITE,
                                FILE_SHARE_READ|FILE_SHARE_WRITE,
        NULL,CREATE_ALWAYS/*|OPEN_EXISTING*/,FILE_ATTRIBUTE_NORMAL,NULL);
      if (hOpenFile != INVALID_HANDLE_VALUE)
      {
        DWORD dwBytesWritten;
        WriteFile(hOpenFile, strText.GetBuffer(), strText.GetLength(), 
                                          &dwBytesWritten, NULL);
        CloseHandle((void *)hOpenFile);
      }
    }
    else
    {
      CFile file;
      if (file.Open("data.txt",CFile::modeCreate|CFile::shareDenyNone|CFile::modeWrite
                                      /*|CFile::typeText*/))
      {
        file.Write(strText.GetBuffer(), strText.GetLength());
        file.Close();
      }
    }
  }
  catch (CMemoryException* e)
  {
    TCHAR szBuff[MAX_PATH+1]={0};
    e->GetErrorMessage(szBuff, MAX_PATH);
    AfxMessageBox(szBuff);
  }
  catch (CFileException* e)
  {
    TCHAR szBuff[MAX_PATH+1]={0};
    e->GetErrorMessage(szBuff, MAX_PATH);
    AfxMessageBox(szBuff);
  }
  catch (CException* e)
  {
    TCHAR szBuff[MAX_PATH+1]={0};
    e->GetErrorMessage(szBuff, MAX_PATH);
    AfxMessageBox(szBuff);
  }说明:
1.如果文件不存在,CreateFile指定OPEN_EXISTING标志将导致调用失败;
2.CFile不支持文本格式打开,只能在继承类中使用,Open中指定typeText标志将导致程序崩溃;
3.代码中判断文件是否存在功能有重复,只是为了展示文件用法需要。
                










