chfile


Klasse GFile

Die DLL kapselt die Dateizugriffe unter Windows. Zusätzlich werden Funktionen zur Verfügung gestellt, die das Schreiben und Lesen in/aus den Dateien vereinfachen. Hierzu gehören z.B. ReadString oder ReadDelimiter, die einen ANSI-String lesen und schreiben oder Zeichenketten mit einem bestimmten Trenner lesen und schreiben.

Die Funktion
extern "C" char* DLL_EXP GetGFileVersion();
gibt die Versionsnummer der DLL zurück.

Konstruktoren

  GFile Standardkonstruktor mit den Vorgaben:
ReadRange=500
Delimiter=";"
     
  GFile(char *name,DWORD access,DWORD create); Konstruktor mit den Vorgaben:
ReadRange=500
Delimiter=";"
Auf die Datei name wird mit access und create zugegriffen.

Destruktor

  ~GFile() Ruft die Funktion Close() auf.

Klassenfunktionen

  bool Open(char *name,DWORD access,DWORD create);
bool Open(String name,DWORD access,DWORD create);
Auf die Datei name wird mit access und create zugegriffen. Die Rückgabe true bedeutet, das die Funktion erfolgreich war.
     
  bool OpenWriteNew(char *name);
bool OpenWriteNew(String name);
Öffnet die Datei name zu schreiben. Ist sie nicht vorhanden, wird sie angelegt. Die Rückgabe true bedeutet, das die Funktion erfolgreich war.
     
  bool OpenWriteAppend(char *name);
bool OpenWriteAppend(String name);
Öffnet die Datei name zum anhängen. Die Rückgabe true bedeutet, das die Funktion erfolgreich war.
     
  bool OpenReadExist(char *name);
bool OpenReadExist(String name);
Öffnet die Datei name zum lesen. Die Rückgabe true bedeutet, das die Funktion erfolgreich war.
     
  bool Close(); Schließt die Datei. Die Rückgabe true bedeutet, das die Funktion erfolgreich war.
     
  bool Read(LPVOID buffer,int laenge); Ließt laenge Bytes nach buffer. Die Rückgabe true bedeutet, das die Funktion erfolgreich war.
     
  bool Write(LPCVOID buffer,int laenge); Scheibt laenge aus buffer in die Datei. Die Rückgabe true bedeutet, das die Funktion erfolgreich war.
     
  char *ReadLine(); Ließt einen ANSI-String ein bis zur maximalen Länge von ReadRange. Die Rückgabe enthält den String
     
  bool WriteLine(char* str); Schreibt einen String. Die Rückgabe true bedeutet, das die Funktion erfolgreich war.
     
  bool WriteLine(LPCVOID buffer,int laenge); Schreibt laenge Bytes aus buffer und fügt einen MSDOS-Zeilenumbruch ein, so dass mit der Funktion ReadLine wieder gelesen werdne kann. Die Rückgabe true bedeutet, das die Funktion erfolgreich war.
     
  char *ReadDelimiter(); Ließt einen String ein bis zur maximalen Länge von ReadRange oder bis zum Auftreten des Delimiters. Die Rückgabe enthält den String
     
  bool WriteDelimiter(char *str); Schreibt einen String und fügt den Delimiter ein. Die Rückgabe true bedeutet, das die Funktion erfolgreich war.
     
  bool WriteDelimiter(LPCVOID buffer,int laenge); Schreibt laenge Bytes aus buffer und fügt einen Delimiter ein, so dass mit der Funktion ReadDelimiter wieder gelesen werdne kann. Die Rückgabe true bedeutet, das die Funktion erfolgreich war.
     
  void SetDelimiter(char *zeichen); Setzt das Delimiter-Zeichen
     
  void SetReadRange(long r); Setzt die maximal zu lesenden Bytes für das lesen von Strings
     
  DWORD GetSeekPos(); Gibt die Lese/Schreibposition zurück
     
  bool Seek(long distance,DWORD meth); Setzt die Lese/Schreibposition (mit dem Wert distance und der Methode meth) ohne Berücksichtigung der Dateigröße. Die Rückgabe true bedeutet, das die Funktion erfolgreich war.
meth kann folgende Werte haben:
FILE_BEGIN = Dateianfang
FILE_CURRENT = Akutelle Position
FILE_END = Dateiende
     
  bool SeekProt(long distance,DWORD meth); Setzt die Lese/Schreibposition (mit dem Wert distance und der Methode meth) unter Berücksichtigung der Dateigröße. Die Rückgabe true bedeutet, das die Funktion erfolgreich war.
meth kann folgende Werte haben:
FILE_BEGIN = Dateianfang
FILE_CURRENT = Akutelle Position
FILE_END = Dateiende
     
  HANDLE GetHandle(); Gibt das Dateihandle zurück, um es für andere Funktionen zu verwenden.
     
  DWORD GetSize(); Gibt die Dateigröße zurück.
     
  String GetName(); Gibt den Namen der Datei zurück
     
  DWORD Fehler(); Gibt beim auftreten eines Fehlers den Fehlercode zurück
     
  char* FehlerAsString(); Gibt beim auftreten eines Fehlers den Fehlertext
     
  bool SetEOF(); Setzt ein EOF an der Position. Die Rückgabe true bedeutet, das die Funktion erfolgreich war.
  bool GetEOF(); Gibt zurück, ob das Dateiende erreicht wird


Download

chfile-dll Version : 2.7.0.0 98 KB

Revision

2.7.0.0 Migration auf C++ Builder 2006
2.0.0.103 ANSI-String als Übergabe- und Aufrufparameter entfernt (Speicherverwaltung von Strings in DLL's)
2.0.0.113 Fehler behoben
2.0.0.115 GetEOF() eingefügt