Microsoft Foundation Classes (mfc.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
CFile::CFile
CFile                                       Up Contents Index Back
──Microsoft Foundation Classes──────────────────────────────────────────────
 
  CFile();
  CFile( int hFile );
  CFile( const char* pszFileName, UINT nOpenFlags )
  throw( CFileException );
 
  Parameter     Description
 
  <hFile>       The handle of a file that is already open.
 
  <pszFileName> A string that is the path to the desired file. The path
                may be relative or absolute.
 
  <nOpenFlags>  Sharing and access mode. Specifies the action to take when
                opening the file. You can combine options listed below by
                using the bitwise-OR (|) operator. One access permission
                and one share option are required; the modeCreate and
                modeNoInherit modes are optional.
 
                Value                   Meaning
 
                CFile::modeCreate       Directs the constructor to create
                                        a new file. If the file exists
                                        already, it is truncated to 0
                                        length.
 
                CFile::modeRead         Opens the file for reading only.
 
                CFile::modeReadWrite    Opens the file for reading and
                                        writing.
 
                CFile::modeWrite        Opens the file for writing only.
 
                CFile::modeNoInherit    Prevents the file from being
                                        inherited by child processes.
 
                CFile::shareDenyNone    Opens the file without denying
                                        other processes read or write
                                        access to the file. Create fails
                                        if the file has been opened in
                                        compatibility mode by any other
                                        process.
 
                CFile::shareDenyRead    Opens the file and denies other
                                        processes read access to the file.
                                        Create fails if the file has been
                                        opened in compatibility mode or
                                        for read access by any other
                                        process.
 
                CFile::shareDenyWrite   Opens the file and denies other
                                        processes write access to the
                                        file. Create fails if the file has
                                        been opened in compatibility mode
                                        or for write access by any other
                                        process.
 
                CFile::shareExclusive   Opens the file with exclusive
                                        mode, denying other processes both
                                        read and write access to the file.
                                        Construction fails if the file has
                                        been opened in any other mode for
                                        read or write access, even by the
                                        current process.
 
                CFile::shareCompat      Opens the file with compatibility
                                        mode, allowing any process on a
                                        given machine to open the file any
                                        number of times. Construction
                                        fails if the file has been opened
                                        with any of the other sharing
                                        modes.
 
                CFile::typeText         Sets text mode with special
                                        processing for carriage
                                        return──linefeed pairs (used in
                                        derived classes only).
 
                CFile::typeBinary       Sets binary mode (used in derived
                                        classes only).
 
  Remarks
 
  The default constructor does not open a file, but rather sets m_hFile to
  CFile::hFileNull. Because this constructor does not throw an exception,
  it does not make sense to use TRY/CATCH logic. Use the Open member
  function, then test directly for exception conditions. For a discussion
  of exception processing strategy, see the cookbook in the <Class
  Libraries User's Guide>.
 
  The constructor with one argument creates a CFile object that
  corresponds to an existing operating-system file identified by <hFile>.
  No check is made on the access mode or file type.
 
  The constructor with two arguments creates a CFile object and opens the
  corresponding operating-system file with the given path. This
  constructor combines the functions of the first constructor and the Open
  member function. It throws an exception if there is an error while
  opening the file. Generally this means that the error is unrecoverable
  and that the user should be alerted.
 
  Example
 
  char* pFileName = "test.dat";
  TRY
  {
     CFile f( pFileName, CFile::modeCreate | CFile::modeWrite );
  }
  CATCH( CFileException, e )
  {
     #ifdef _DEBUG
        afxDump << "File could not be opened " << e->m_cause << "\n";
     #endif
  }
  END_CATCH
 
 
 
                                     -♦-