CFile is de basisklasse voor alle MFC -bestand klassen . Het wordt gebruikt als een hulpmiddel voor de behandeling schijfdossiers . De CFile klasse wordt gebruikt om zes bestand klassen die meer gespecialiseerde bestanden zoals stroom , geheugen of socket vertegenwoordigen ontlenen . MFC CFile objecten kunnen twee manieren openen en ondersteunen lees -en schrijfbewerkingen die kan worden geregeld door middel van vlaggen. De CFile input /output -diensten die de CFile klasse biedt rechtstreeks , zijn gebufferd . Instructies 1 Maak en instantiëren een CFile object . Dit kan op twee manieren , door de fabrikant of door de functie Open . Deze worden hieronder toegelicht CFile f ( " C : \\ \\ ... \\ \\ test.txt " , CFile :: modeCreate | CFile :: modeReadWrite ) ; Twitter //orCFile f ; f . . Open ( " C : \\ \\ ... \\ \\ test.txt " , CFile :: modeCreate | CFile :: modeReadWrite ) ; kopen van 2 Begrijp Stap 1 . In beide gevallen twee parameters worden geaccepteerd . De eerste is een tekenreeks die overeenkomt met het fysieke pad binnen de harde schijf . De tweede is een of meer opgesomde constanten die aangeven hoe het bestand moet worden geopend . " modeCreate " ( 0x1000 ) maakt een nieuw bestand . " modeReadWrite " ( 0x0002 ) opent een bestand voor lezen en schrijven . ' shareDenyNone ' ( 0x0040 ) maakt het bestand toegankelijk is voor andere toepassingen voor alleen lezen . Bij gebruik van meer dan een constante , scheiden met een " | " . Controleer MFC -database van Microsoft voor meer informatie over de rest van de constanten . 3 Schrijf gegevens naar een CFile object . In het codevoorbeeld hieronder een buffer van 80 int soorten met een waarde nul is , wordt weggeschreven naar een binair bestand int buf [ 80 ] = { 0 } ; . CFile f ; f.Open ( " C : \\ \\ ... \\ \\ test.txt " , CFile :: modeCreate | CFile :: modeWrite | CFile :: typeBinary ) ; f.write ( buf , 80 * sizeof ( int ) ) ; < br > 4 Lees gegevens uit een CFile object . De voorbeeldcode hieronder toont hoe de functie werkt . In tegenstelling Schrijven ( ) , de Lees functie geeft een geheel getal zonder teken . Dat is het aantal bytes gelezen die kunnen worden aangegeven maximum in de tweede parameter , of minder int buf [ 80 ] = { 0 } ; . CFile f ; Twitter //aannemen bestand bestaat en heeft databank f.Open ( " C : \\ \\ ... \\ \\ test.txt " , CFile :: ModeReadWrite | CFile :: typeBinary ) ; UINT bytesRead = f.read ( buf , 80 * sizeof ( int ) ) ; 5 Sluit het bestand . U kunt de Close functie expliciet te gebruiken of te wachten voor het object om uit te gaan van de ruimte , in welk geval de destructor wordt automatisch bellen Close ( ) op f.close ( ) ; .
|