SCWlib: clsINI
Visual Basic Klasse für den Zugriff auf INI-Dateien.
Lizenz
Der Autor übernimmt KEINE HAFTUNG für Schäden jeglicher Art an Dateien oder Hardware, die durch dieses Programm verursacht werden könnten.
Installationen und Benutzung der Software sind kostenlos sowohl im privaten als auch im kommerziellen Umfeld.
Wenn die das Projekt finanziell unterstützen wollen, dann wenden Sie sich bitte direkt an den Autor.
Die private nichtkommerzielle Weitergabe des Programms auf Datenträgern ist gestattet.
Die nichtkommerzielle Spiegelung auf www- und ftp-Servern von Schulen, Hochschulen, Vereinen und gemeinnützigen Organisationen ist gestattet.
Die Spiegelung des Programms auf Homepages von Privatpersonen oder Gewerbe ist vorher vom Autor genehmigen zu lassen.
Die kommerzielle Verwertung und Verteilung des Programms ist nur mit ausdrücklicher Erlaubnis des Autors gestattet.
Anleitung
Zum Benutzen der Klasse muß man die Datei clsINI.cls dem Visual-Basic Projekt hinzufügen.
Die Klasse unterstützt folgende Methoden:
- File = String
Pfad der INI-Datei.
- FileExists() As Boolean
Überprüfen, ob die INI-Datei existiert.
- ReadKeyValueInt(Abschnitt As String, Schlüssel As String, Optional Standardwert As Long) As Long
Liest einen Integer-Wert aus der INI-Datei.
- ReadKeyValueBool(Abschnitt As String, Schlüssel As String, Optional Standardwert As Boolean) As Boolean
Liest einen Boolean-Wert aus der INI-Datei.
- ReadKeyValueStr(Abschnitt As String, Schlüssel As String, Optional Standardwert As String) As String
Liest einen String-Wert aus der INI-Datei.
- ReadKeyValue(Abschnitt As String, Schlüssel As String, Optional Standardwert As String) As String
Liest einen String-Wert aus der INI-Datei.
- WriteKeyValueInt(Abschnitt As String, Schlüssel As String, Wert As Long) As Boolean
Schreibt einen Integer-Wert in die INI-Datei.
- WriteKeyValueBool(Abschnitt As String, Schlüssel As String, Wert As Boolean) As Boolean
Schreibt einen Boolean-Wert in die INI-Datei.
- WriteKeyValueStr(Abschnitt As String, Schlüssel As String, Wert As String) As Boolean
Schreibt einen String-Wert in die INI-Datei.
- WriteKeyValue(Abschnitt As String, Schlüssel As String, Wert As String) As Boolean
Schreibt einen String-Wert in die INI-Datei.
- GetSectionNames(ByRef Abschnitte() As String) As Integer
Liefert die Anzahl der Namen aller Abschnitte zurück. Die Namen selber werden über das Datenfeld "Abschnitte" zurück gegeben.
- GetKeyNames(Abschnitt As String, ByRef Schlüssel() As String) As Integer
Liefert die Anzahl der Namen aller Schlüssel von einem Abschnitt zurück. Die Namen selber werden über das Datenfeld "Schlüssel" zurück gegeben.
- DeleteSection(Abschnitt As String) As Boolean
Löscht einen Abschnitt aus der INI-Datei.
- DeleteKey(Abschnitt As String, Schlüssel As String) As Boolean
Löscht einen Schlüssel aus der INI-Datei.
Eine INI-Datei ist immer folgendermaßen aufgebaut:
| INI-Datei |
[Abschnitt]
Schlüssel=Wert
[Abschnitt-2]
Schlüssel-1=Wert-1
Schlüssel-2=Wert-2
[Abschnitt-3]
Schlüssel-1=Wert-1
Schlüssel-2=Wert-2
|
|
|
Der folgende Code zeigt, wie man die Klasse verwenden muss, um eine INI-Datei zu bearbeiten:
| Beispielcode |
Dim INI As New clsINI
Dim i As Integer, j As Integer, s As String
Dim sArray() As String
INI.File = "C:\Datei.ini" 'Pfad der INI-Datei.
If (INI.FileExists = True) Then 'Wenn die INI-Datei vorhanden ist...
s = INI.ReadKeyValueInt("Test", "Integer") 'Integer-Wert auslesen.
i = INI.ReadKeyValueStr("Test", "String") 'String-Wert auslesen.
INI.WriteKeyValueBool "Test", "Boolean", True 'Boolean-Wert schreiben.
i = INI.GetKeyNames("Test", sArray)
For j = 0 To (i - 1) 'Für alle Schlüssel...
Debug.Print sArray(j)
Next j
INI.DeleteKey "Test", "Alt" 'Schlüssel löschen.
INI.DeleteSection "Alt" 'Abschnitt löschen.
End If
|
|
|
Bekannte Probleme:
- Die Klasse kann nur Schlüssel lesen und schreiben, die innerhalb eines Abschnittes sind.
Viel Spaß mit der Klasse
Tim Gerundt
Version
| 0.9.0 | » | Funktion GetSectionNames eingebaut. |
| | » | Funktion GetKeyNames eingebaut. |
| | » | Versionsschema geändert. |
| 0.0.8 | » | Erste offizielle Version. |
|
|