2. Dateiein- und -ausgabe
In dieser Lektion erhalten Sie
Informationen über:
Verwenden verschiedener Eigenschaften des
File-Objekts.
Verwenden verschiedener Prozesse für das
File-Objekt.
3. Das File-Objekt
Eine Computerdatei ist eine Auflistung von Daten, die auf dem Computer
gespeichert werden. In Small Basic können Sie aus Ihrem Programm heraus
mit externen Dateien arbeiten.
Mittels des File-Objekts in Small Basic können
Sie auf Informationen in einer Datei zugreifen,
die auf dem Computer gespeichert ist. Sie können
auch Informationen aus dieser Datei lesen und in
diese hineinschreiben.
Das File-Objekt enthält die folgenden Prozesse
und Eigenschaften:
CreateDirectory
GetDirectories
WriteLine
AppendContents
ReadContents
CopyFile
GetFiles
LastError
DeleteDirectory
4. Prozesse für das File-Objekt
Wie Sie sehen können, können Sie auf zahlreiche Arten mit
Dateien arbeiten, indem Sie das File-Objekt verwenden.
Betrachten wir einige der Prozesse des Datei-Objekts...
WriteLine
Sie können eine Textzeile für eine
Zeilennummer schreiben, die Sie in
einer Datei mittels des WriteLineProzesses angeben.
AppendContents
Sie können Text hinzufügen, den Sie am
Ende einer Datei angeben, indem Sie den
AppendContents-Prozess verwenden.
ReadContents
Sie können den gesamten Inhalt einer
Datei lesen, indem Sie den ReadContentsProzess verwenden.
5. Prozesse für das File-Objekt
Schreiben wir nun ein Programm, um
diese Prozesse besser zu verstehen.
In diesem Beispiel geben Sie den
Pfad für eine Datei an und schreiben
einen Satz dazu, indem Sie den
WriteLine-Prozess verwenden.
Als Nächstes fügen Sie dem
vorhandenen Inhalt einen Satz
hinzu, indem Sie den
AppendContents-Prozess
verwenden. Schließlich können Sie
den gesamten Inhalt
der Datei lesen, indem Sie den
ReadContents-Prozess verwenden.
6. Prozesse für das File-Objekt
CopyFile
Sie können die angegebene Datei an
einen Zielort kopieren, indem Sie den
CopyFile-Prozess verwenden.
GetFiles
Sie können eine Liste aller Dateien in einem
von Ihnen angegebenen Verzeichnis
abrufen, indem Sie den GetFiles-Prozess
verwenden.
7. Prozesse für das File-Objekt
Schreiben wir nun ein Programm, um
diese Prozesse besser zu verstehen.
In diesem Beispiel kopieren
Sie die angegebene Quelldatei
an den angegebenen
Zielort, indem Sie den CopyFileProzess verwenden. Sie geben
auch den Verzeichnispfad an.
Anschließend zeigen Sie die Pfade
aller Fenster im Ausgabefenster
an, indem Sie den GetFilesProzess verwenden.
8. Prozesse für das File-Objekt
CreateDirectory
Sie können ein Verzeichnis
mit einem von Ihnen
angegebenen Namen an
einem von Ihnen angegebenen
Speicherort erstellen, indem Sie
diesen Prozess verwenden.
GetDirectories
Mittels dieses Prozesses können
Sie die Pfade aller Verzeichnisse in
dem von Ihnen angegebenen
Verzeichnispfad abrufen.
9. Prozesse für das File-Objekt
Betrachten wir nun, wie wir diese
Prozesse anwenden können...
Als Erstes erstellen Sie
ein Verzeichnis, indem
Sie den CreateDirectoryProzess verwenden.
Als Nächstes rufen
Sie den Pfad aller
Verzeichnisse an dem
von Ihnen angegebenen
Speicherort ab, indem
Sie den GetDirectoriesProzess verwenden.
10. Die Eigenschaft „LastError“
Mittels der LastError-Eigenschaft können Sie Details zu den
aktuellsten Dateiprozessfehlern abrufen, die in Ihrem Programm
aufgetreten sind. Diese Eigenschaft ist nützlich, wenn ein Fehler
die Ausführung eines Prozesses durch Ihr Programm verhindert.
In diesem Beispiel
schreiben Sie Text in eine
Datei an einer bestimmten,
von Ihnen angegebenen
Zeilennummer mittels des
WriteLine-Prozesses für
das File-Objekt.
Als Nächstes erhalten
Sie die Details des
tatsächlichen Fehlers
im Programm, wenn
vorhanden, indem Sie die
LastError-Eigenschaft des
File-Objekts verwenden.
11. Fassen wir zusammen…
Herzlichen Glückwunsch! Sie haben
Folgendes gelernt:
Verwenden verschiedener Eigenschaften des
File-Objekts.
Verwenden verschiedener Prozesse für das
File-Objekt.
12. Zeigen Sie, was Sie wissen
Schreiben Sie ein Programm, das
die folgenden Schritte durchführt:
Fordert vom Benutzer einen geeigneten
Namen für ein Verzeichnis an und erstellt
ein Verzeichnis dieses Namens.
Lädt eine Datei aus dem Netzwerk
herunter und kopiert diese in das
neue Verzeichnis.
Zeigt den Inhalt der heruntergeladenen
Datei im Textfenster an.
Akzeptiert zusätzliche Inhalte vom
Benutzer und fügt diese der Datei hinzu.
Zeigt den endgültigen Inhalt der Datei
im Textfenster an.
Hinweis der Redaktion
Durch die Verwendung des File-Objekts können Sie auch Einstellungen über mehrere Sitzungen Ihres Programms hinweg speichern und öffnen.
Wenn der WriteLine- oder AppendContents-Prozess erfolgreich abgeschlossen wurde, wird im Ausgabefenster „ERFOLG“ angezeigt. Andernfalls wird „FEHLER“ angezeigt.Der WriteLine-Prozess überschreibt den zuvor erstellten Inhalt für die angegebene Zeile. Der ReadContents-Prozess zeigt den gesamten Inhalt der angegebenen Datei im Ausgabefenster an. Dieser Prozess wird schneller durchgeführt, wenn die Datei kleiner als 1 MB ist. Der Prozess wird mit zunehmender Größe der Datei verlangsamt, insbesondere im Fall von Dateien, die größer als 10 MB sind.Code:Writeline:File.WriteLine(„C:\Small Basic.txt“, 1, „Hallo“)AppendContents:File.AppendContents(„C:\Small Basic.txt“,„Mach's Gut“)ReadContents:File.ReadContents(„C:\Small Basic.txt“)
Code:FilePath = „C:\temp\TempSubdirect\my.txt“TextWindow.WriteLine(„Write Line Operation: “ + File.WriteLine(FilePath, 1, „Wie geht es Ihnen?“))If File.LastError = „“ ThenTextWindow.WriteLine(„Prozesserfolgreich“)ElseTextWindow.WriteLine(File.LastError)EndIf
Diese Lösung setzt voraus, dass die Datei mit dem angegebenen Namen am angegebenen Speicherort vorhanden ist.Lösung:TextWindow.Write(„Geben Sie den Namen des neuen Verzeichnisses ein: “)DirectoryName = TextWindow.Read()File.CreateDirectory(DirectoryName)filepath = „\\myserver\Share\FileIO.txt“downloadpath = Network.DownloadFile(filepath) If File.CopyFile(downloadpath, DirectoryName) = „ERFOLG“ ThenTextWindow.WriteLine(„Die Datei wurde aus dem Netzwerk heruntergeladenenund kopiert nach: “ + DirectoryName)files = File.GetFiles(DirectoryName) TextWindow.WriteLine(„Dies ist der Inhalt der Datei: “)TextWindow.WriteLine(File.ReadContents(files[1])) TextWindow.Write(„Geben Sie die Daten ein, die in der Datei hinzugefügt werden sollen:“)AppendedData = TextWindow.Read()File.AppendContents(files[1],„ “ + AppendedData)TextWindow.WriteLine(„Der Inhalt der Datei nach dem Hinzufügen der Daten ist wie folgt: “)TextWindow.WriteLine(File.ReadContents(files[1])) EndIf