This documenta- tion describes the current state of development.
Note that interfaces and functionality may still change.

Prokee Modules:
  A
  B
  C
  D
  E
  F
  G
  I
  L
  M
  N
  O
  P
  R
  S
  T
  U
  W

     open all    |    close all

GUI Elements:
  B
  C
  I
  M
  P
  R
  S
  T

     open all    |    close all

GUI Interactions:
  B
  F
  H
  S

     open all    |    close all

GUI Layouts:
  L

     open all    |    close all

Games/Demos:
  M

     open all    |    close all

Third Party Libraries:
  P
  F
  Z

     open all    |    close all

Information about this Website / Informationen zu dieser Webseite:
In case of any questions, or comments, please feel free to contact me via email at apoll500@gmail.com.

Module unireader [Version: v01] (Interface AbsUniReader)

   [AbsUniReader]

Contents

Inheritance:
AbsUniReader
Implementations: UniReader

Constructors:
UniReader
AbsUniReader *createUniReader()

Methods:
Dateien öffnen und schließen:
openfile (version 1)
int openfile(const char *filename)
openfile (version 2)
int openfile(const char *filename,int format)
openfile (version 3) [WIN_ONLY]
int openfile(const wchar_t *filename)
openfile (version 4) [WIN_ONLY]
int openfile(const wchar_t *filename,int format)
closefile
int closefile()
Das nächste Zeichen einlesen:
get
int get()
Eigenschaften abfragen:
getCurrentFilename
const char *getCurrentFilename()
getCurrentRow
int getCurrentRow()
getCurrentColumn
int getCurrentColumn()
getCurrentFileFormat
int getCurrentFileFormat()

Constructors

   UniReader


Kann Textdateien zeichenweise einlesen. Unterstützte Dateiformate sind ASCII, UTF-8 (mit und ohne BOM), UTF-16 mit BOM (Big- oder Little-Endian) und UTF-32 mit BOM (Big- oder Little-Endian), sowie UTF-16BE, UTF-16LE, UTF-32BE und UTF-32LE.

Constructor:
UniReader()

Factory Method:
AbsUniReader *AbsUniReaderInterface::createUniReader()

Wrapper Class:
UniReaderWrapper()

The static method AbsUniReaderInterface::createUniReader creates a new instance of class UniReader.

Return value:
Returns an instance of UniReader.


Methods

   openfile (version 1)


Öffnet eine Datei.

Durch wiederholten Aufruf von openfile() können mehrere Dateien gleichzeitig geöffnet werden. Das Einlesen von Zeichen erfolgt immer aus der zuletzt geöffneten Datei. Wird diese geschlossen, so wird aus der zuvor geöffneten Datei weiter gelesen.

Jede erfolgreich geöffnete Datei sollte durch Aufruf von closefile() wieder geschlossen werden.

Das Dateiformat wird anhand des BOM (Byte-Order-Mark) Zeichens erkannt. Sofern kein BOM vorhanden ist, wird versucht die Datei als UTF-8 Datei einzulesen.

Signature:
int openfile(const char *filename)

Parameters:
Type Name Direction Description
const char *filename[IN]The path to a file to be opened (as a null-terminated ASCII/ANSI or UTF-8 string).


Return value:
Gibt 0 zurück, falls die Datei erfolgreich geöffnet werden konnte, sonst einen Wert ungleich 0.

Required code:
interface AbsUniFileReader from module reader (version 1 - 0 -- default: v01)

   openfile (version 2)


Öffnet eine Datei.

Durch wiederholten Aufruf von openfile() können mehrere Dateien gleichzeitig geöffnet werden. Das Einlesen von Zeichen erfolgt immer aus der zuletzt geöffneten Datei. Wird diese geschlossen, so wird aus der zuvor geöffneten Datei weiter gelesen.

Jede erfolgreich geöffnete Datei sollte durch Aufruf von closefile() wieder geschlossen werden.

Das Dateiformat wird anhand von format festgelegt.

Signature:
int openfile(const char *filename,int format)

Parameters:
Type Name Direction Description
const char *filename[IN]The path to a file to be opened (as a null-terminated ASCII/ANSI or UTF-8 string).
int formatThe Unicode Encoding Format of the file. Einer der folgenen Werte:
WertBedeutung
UNIREADER_FORMAT_UNDEFINEDDie Codierung wird anhand des BOM (Byte-Order-Mark) Zeichens erkannt. Falls kein BOM angegeben ist, wird versucht die Datei als UTF-8 Datei einzulesen.
UNIREADER_FORMAT_UTF8Die Datei wird als UTF-8 Datei eingelesen. Die Datei darf ein BOM Zeichen enthalten.
UNIREADER_FORMAT_UTF16Die Datei wird als UTF-16 Datei eingelesen. Die Byte-Reihenfolge wird anhand des BOM Zeichens bestimmt. Ist kein BOM vorhanden, so wird Big-Endian angenommen.
UNIREADER_FORMAT_UTF16BEDie Datei wird als UTF-16BE (Big-Endian) Datei eingelesen. Die Datei darf kein BOM enthalten.
UNIREADER_FORMAT_UTF16LEDie Datei wird als UTF-16LE (Little-Endian) Datei eingelesen. Die Datei darf kein BOM enthalten.
UNIREADER_FORMAT_UTF32Die Datei wird als UTF-32 Datei eingelesen. Die Byte-Reihenfolge wird anhand des BOM Zeichens bestimmt. Ist kein BOM vorhanden, so wird Big-Endian angenommen.
UNIREADER_FORMAT_UTF32BEDie Datei wird als UTF-32BE (Big-Endian) Datei eingelesen. Die Datei darf kein BOM enthalten.
UNIREADER_FORMAT_UTF32LEDie Datei wird als UTF-32LE (Little-Endian) Datei eingelesen. Die Datei darf kein BOM enthalten.


Return value:
Gibt 0 zurück, falls die Datei erfolgreich geöffnet werden konnte, sonst einen Wert ungleich 0.

Required code:
interface AbsUniFileReader from module reader (version 1 - 0 -- default: v01)

   openfile (version 3) [WIN_ONLY]


Öffnet eine Datei.

Durch wiederholten Aufruf von openfile() können mehrere Dateien gleichzeitig geöffnet werden. Das Einlesen von Zeichen erfolgt immer aus der zuletzt geöffneten Datei. Wird diese geschlossen, so wird aus der zuvor geöffneten Datei weiter gelesen.

Jede erfolgreich geöffnete Datei sollte durch Aufruf von closefile() wieder geschlossen werden.

Das Dateiformat wird anhand des BOM (Byte-Order-Mark) Zeichens erkannt. Sofern kein BOM vorhanden ist, wird versucht die Datei als UTF-8 Datei einzulesen.

Signature:
int openfile(const wchar_t *filename)

Parameters:
Type Name Direction Description
const wchar_t *filename[IN]The path to a file to be opened (as a null-terminated wide-character-string).


Return value:
Gibt 0 zurück, falls die Datei erfolgreich geöffnet werden konnte, sonst einen Wert ungleich 0.

Remarks:
Diese Methode steht nur unter Windows Betriebssystemen zur Verfügung. Es kann sein, dass die Methode unter anderen Betriebssystemen ebenfalls deklariert ist, die konkrete Implementierung fehlt aber in jedem Fall. Verwenden Sie diese Methode daher mit Vorsicht. Aufrufe sollten immer innerhalb eines entsprechenden Präprozessor-Blocks stehen: Z.B.: #ifdef _WIN32 ... #endif.

Required code:
interface AbsUniFileReader from module reader (version 1 - 0 -- default: v01)

   openfile (version 4) [WIN_ONLY]


Öffnet eine Datei.

Durch wiederholten Aufruf von openfile() können mehrere Dateien gleichzeitig geöffnet werden. Das Einlesen von Zeichen erfolgt immer aus der zuletzt geöffneten Datei. Wird diese geschlossen, so wird aus der zuvor geöffneten Datei weiter gelesen.

Jede erfolgreich geöffnete Datei sollte durch Aufruf von closefile() wieder geschlossen werden.

Das Dateiformat wird anhand von format festgelegt.

Signature:
int openfile(const wchar_t *filename,int format)

Parameters:
Type Name Direction Description
const wchar_t *filename[IN]The path to a file to be opened (as a null-terminated wide-character-string).
int formatThe Unicode Encoding Format of the file. Einer der folgenen Werte:
WertBedeutung
UNIREADER_FORMAT_UNDEFINEDDie Codierung wird anhand des BOM (Byte-Order-Mark) Zeichens erkannt. Falls kein BOM angegeben ist, wird versucht die Datei als UTF-8 Datei einzulesen.
UNIREADER_FORMAT_UTF8Die Datei wird als UTF-8 Datei eingelesen. Die Datei darf ein BOM Zeichen enthalten.
UNIREADER_FORMAT_UTF16Die Datei wird als UTF-16 Datei eingelesen. Die Byte-Reihenfolge wird anhand des BOM Zeichens bestimmt. Ist kein BOM vorhanden, so wird Big-Endian angenommen.
UNIREADER_FORMAT_UTF16BEDie Datei wird als UTF-16BE (Big-Endian) Datei eingelesen. Die Datei darf kein BOM enthalten.
UNIREADER_FORMAT_UTF16LEDie Datei wird als UTF-16LE (Little-Endian) Datei eingelesen. Die Datei darf kein BOM enthalten.
UNIREADER_FORMAT_UTF32Die Datei wird als UTF-32 Datei eingelesen. Die Byte-Reihenfolge wird anhand des BOM Zeichens bestimmt. Ist kein BOM vorhanden, so wird Big-Endian angenommen.
UNIREADER_FORMAT_UTF32BEDie Datei wird als UTF-32BE (Big-Endian) Datei eingelesen. Die Datei darf kein BOM enthalten.
UNIREADER_FORMAT_UTF32LEDie Datei wird als UTF-32LE (Little-Endian) Datei eingelesen. Die Datei darf kein BOM enthalten.


Return value:
Gibt 0 zurück, falls die Datei erfolgreich geöffnet werden konnte, sonst einen Wert ungleich 0.

Remarks:
Diese Methode steht nur unter Windows Betriebssystemen zur Verfügung. Es kann sein, dass die Methode unter anderen Betriebssystemen ebenfalls deklariert ist, die konkrete Implementierung fehlt aber in jedem Fall. Verwenden Sie diese Methode daher mit Vorsicht. Aufrufe sollten immer innerhalb eines entsprechenden Präprozessor-Blocks stehen: Z.B.: #ifdef _WIN32 ... #endif.

Required code:
interface AbsUniFileReader from module reader (version 1 - 0 -- default: v01)

   closefile


Schließt die zuletzt geöffnete Datei.

Signature:
int closefile()

Return value:
Gibt 0 zurück falls die zuletzt geöffnete Datei geschlossen werden konnte, sonst 1.

Required code:
interface AbsUniFileReader from module reader (version 1 - 0 -- default: v01)

   get


Liest das nächste Zeichen aus der zuletzt geöffneten (und noch nicht wieder geschlossenen) Datei.

Signature:
int get()

Return value:
Das zuletzt eingelesene Zeichen (Wert des Unicode-Codepoints).
- Falls das Dateiende erreicht wurde, wird -1 zurückgegben.
- Falls keine Datei zum Einlesen geöffnet ist, wird ebenso -2 zurückgegeben.
- Wird ein ungültiges Zeichen eingelesen, so wird -3 zurückgegeben. Dass Einlesen stoppt in diesem Fall an der Stelle des ungültigen Zeichens. Weitere Aufrufe von get() geben in der Folge ebenfalls -3 zurück. Achtung. Die aktuelle Implementierung ist unvollständig. Nicht alle ungültigen Zeichen werden erkannt.

Required code:
method Reader::get from module reader (version 1 - 0 -- default: v01)
function decode from module utf8 (version 1 - 0 -- default: v01)
function decode_BE from module utf16 (version 1 - 0 -- default: v01)
function decode_LE from module utf16 (version 1 - 0 -- default: v01)

   getCurrentFilename


Gibt den Dateinamen der zuletzt geöffneten (und noch nicht wieder geschlossenen) Datei zurück. (Nur implementiert falls der Dateiname als (char *) angegeben wurde. Sonst wird "" als Dateiname zurückgegeben.)

Signature:
const char *getCurrentFilename()

Return value:
Dateiname (ggf. inkl. Pfad) als null-terminierter String in UTF-8 Codierung.

   getCurrentRow


Gibt die Zeile der aktuellen Leseposition in der Datei zurück, die aktuell eingelesen wird.

Signature:
int getCurrentRow()

Return value:
Nummer der aktuellen Zeile (wobei die Nummerierung mit 1 beginnt).

   getCurrentColumn


Gibt die Spalte der aktuellen Leseposition in der Datei zurück, die aktuell eingelesen wird.

Signature:
int getCurrentColumn()

Return value:
Nummer der aktuellen Spalte (wobei die Nummerierung mit 1 beginnt).

   getCurrentFileFormat


Gibt das Format der Datei zurück, die aktuell eingelesen wird.

Signature:
int getCurrentFileFormat()

Return value:
UNIREADER_FORMAT_UNDEFINED Unbekanntes Dateiformat. Es wird versucht die Datei als UTF-8 Datei einzulesen.
UNIREADER_FORMAT_UTF8 Datei in UTF-8 Codierung ohne BOM.
UNIREADER_FORMAT_UTF8_BOM Datei in UTF-8 Codierung mit BOM.
UNIREADER_FORMAT_UTF16 Datei in UTF-16 Codierung (ohne BOM, Big-Endian wird angenommen).
UNIREADER_FORMAT_UTF16_BOMBE Datei in UTF-16 Codierung (mit BOM für Big-Endian).
UNIREADER_FORMAT_UTF16_BOMLE Datei in UTF-16 Codierung (mit BOM für Little-Endian).
UNIREADER_FORMAT_UTF16BE Datei in UTF-16BE (Big-Endian) Codierung (ohne BOM).
UNIREADER_FORMAT_UTF16LE Datei in UTF-16LE (Little-Endian) Codierung (ohne BOM).
UNIREADER_FORMAT_UTF32 Datei in UTF-32 Codierung (ohne BOM, Big-Endian wird angenommen).
UNIREADER_FORMAT_UTF32_BOMBE Datei in UTF-32 Codierung (mit BOM für Big-Endian).
UNIREADER_FORMAT_UTF32_BOMLE Datei in UTF-32 Codierung (mit BOM für Little-Endian).
UNIREADER_FORMAT_UTF32BE Datei in UTF-32BE (Big-Endian) Codierung (ohne BOM).
UNIREADER_FORMAT_UTF32LE Datei in UTF-32LE (Little-Endian) Codierung (ohne BOM).



Copyright © 2017 - 2019 by Andreas Pollhammer