BlitzBasic-Community-Tutorial/ Dateisystem
Ordner
[Bearbeiten]Ordner lesen
[Bearbeiten]Mit dem Befehl Readdir(pfad$) kann man den Inhalt eines Ordners auslesen. Das Handle, das dieser Befehl zurückliefert, kann dann genutzt werden, um die einzelnen Einträge (Dateien und Unterordner) im Ordner zu finden. z.B.:
dir=readdir("C:\Programme") repeat filename$=nextfile$(dir) print filename$ until filename$=""
Ordner erstellen
[Bearbeiten]In BlitzBasic kann man ganz einfach mit
CreateDir der_pfad$
einen Ordner erstellen.
Zu beachten, ist der Pfad, der entweder Global(C:/Blitz/Samples/Gfx/) oder Relativ (Samples/Gfx/) zur .bb/.exe Datei (hier müsste sich dann die .bb/.exe Datei im C:/Blitz/Samples/Gfx/ Ordner befinden).
Ordner löschen
[Bearbeiten]In BlitzBasic kann man ganz einfach mit
DeleteDir der_pfad$
einen Ordner löschen.
Zu beachten, ist der Pfad, der entweder Global(C:/Blitz/Samples/Gfx/) oder Relativ (Samples/Gfx/) zur .bb/.exe Datei (hier müsste sich dann die .bb/.exe Datei im C:/Blitz/Samples/Gfx/ Ordner befinden).
Ordner wechseln
[Bearbeiten]Mit
ChangeDir
wechselt man den Ordner.
Mit
ChangeDir ".."
wechselt man zum Übergeordneten Ordner.
Dateien
[Bearbeiten]Dateien erstellen
[Bearbeiten]Um eine Datei zu erstellen muss zuerst ein Stream geöffnet werden
stream=WriteFile("Test.txt")
nun ist die Datei "Test.txt" zum schreiben geöffnet. Um Inhalt hinzuzufügen nutzt man folgende Befehle:
WriteByte stream, wert ;Ganzzahl von 0 bis 255 WriteShort stream, wert ;Ganzzahl von -32768 bis 32767 WriteInt stream, wert ;Ganzzahl von -2147483648 bis 2147483647 WriteFloat stream, wert ;Gleitkommazahl von -2 Mrd bis +2 Mrd WriteLine stream, wert ;Text WriteString stream,wert ;Text
Anschließend muss die Datei mit
CloseFile stream
geschlossen werden.
Dateien öffnen
[Bearbeiten]Um eine Datei zu öffnen ist nicht viel notwendig. Es reicht folgende Zeile zu schreiben:
file = ReadFile("text.txt")
Dabei kann man auch Zeichenkettenvariablen (Strings) als Angabe zur Datei verwenden:
filename$ = input("Name der Datei: ") ;Hier wird der Name der Datei eingegeben file = ReadFile(filename$)
Man kann auch eine Datei zum Schreiben UND Lesen öffnen, das geht mit OpenFile:
file = OpenFile("text.txt") ;Die Datei wird hier mit Lese- UND Schreibzugriff geöffnet
OpenFile sollte man nur verwenden wenn in die Datei schreiben UND von der Datei lesen kann (zum Beispiel von der Festplatte), denn sonst funktioniert er nicht (zum Beispiel von einer CD).
Dateien lesen
[Bearbeiten]DateiNr=Readfile(NameDerDatei$)
Mit den folgenen Befehlen kann gelesen werden:
Liest eine Zeile ein.
Wert$=ReadLine$(DateiNr)
Liest einen Datensatz ein.
Wert$=ReadString$(DateiNr)
Liest einen Integerwert ein.
Wert%=ReadInt%(DateiNr)
Wert%=ReadByte%(DateiNr)
Wert%=ReadShort%(DateiNr)
Wert#=ReadFloat#(DateiNr)
Dateien umbenennen
[Bearbeiten]Um eine Datei umzubenennen muss man sich in BB eine Funktion selber schreiben.
Function RenameFile(oldname$,newname$) Copyfile( oldname$, newname$ ) DeleteFile oldname$ End Function
Anwendung:
RenameFile("alter name.txt","neuer name.txt")
Dateien ausführen
[Bearbeiten]Um eine Datei, wie zum Beispiel ein externes Programm zu starten, genügt:
EXECFILE "C:\WINDOWS\system32\cmd.exe"
Wenn das Blitz-Programm im Vollbild läuft, wird es minimiert und gestoppt. Außerdem fährt das Programm danach fort, egal ob das aufgerufene Programm noch läuft oder nicht. Es können auch Dateien angeben werden, die mit einem Programm verknüpft sind (*.TXT,*.BMP,*.DOC,...).
Beispiel:
EXECFILE "MeinDokument.TXT"
Des Weiteren kann man auch noch den Browser öffnen und eine URL aufrufen lassen:
Beispiel:
EXECFILE "http://www.blitzforum.de"
Dateien schreiben
[Bearbeiten]Um Daten in einer Datei schreiben zu können, muss man sie erstmal für einen schreibenden Zugriff öffnen. Dabei hat man zwei Möglichkeiten:
Erstellen einer neuen Datei (eine evt. vorhandene Datei wird überschrieben):
DateiNr=WriteFile(Dateipfad$)
Daten an eine Datei anhängen:
DateiNr=OpenFile(Dateipfad$)
Wenn DateiNr jetzt ungleich Null ist, konnte die Datei erstellt bzw. geöffnet werden.
Zum Schreiben der Daten in eine Datei stehen die gleichen Befehle wie beim Lesen zur Verfügung nur nicht mit dem Namen read*** sondern write***
Wert$=WriteLine$(DateiNr)
Schreibt eine Textzeile.
Wert$=WriteString$(DateiNr)
Schreibt einen Datensatz ohne abschließenden Zeilenumbruch.
Wert%=WriteInt%(DateiNr)
Schreibt einen Integerwert.
Wert%=WriteByte%(DateiNr)
Schreibt ein Byte.
Wert%=WriteShort%(DateiNr)
Schreibt einen Shortwert.
Wert#=WriteFloat#(DateiNr)
Schreibt eine Kommazahl
Wenn man alle Daten geschrieben hat, muss man die Datei noch schließen:
CloseFile DateiNr