Files (Core)
Liste der Types:
File
InputStream
OutputStream
TextReader
TextWriter
File ist ein vordefiniertes Objekt mit Methoden zur Dateihandlung.
Das Mit
Text Dateien arbeiten Tutorial und das Englische Originaltutorial Text
files tutorial decken fast alle File-Methoden und File-Konzepte ab.
Events:
Keine
Members:
Combine (Dir As String, FileName As String) As String
Copy (DirSource As String, FileSource As String, DirTarget As String, FileTarget As String)
Copy2 (In As java.io.InputStream, Out
As
java.io.OutputStream)
Delete (Dir As String, FileName As String) As Boolean
DirAssets As String [read only]
DirDefaultExternal
As String [read only]
DirInternal As String [read only]
DirInternalCache
As String [read only]
DirRootExternal As String [read only]
Exists (Dir As String, FileName As String) As Boolean
ExternalReadable
As Boolean [read only]
ExternalWritable
As Boolean [read only]
GetText (Dir As String, FileName As String) As String
IsDirectory (Dir As String, FileName As String) As Boolean
ListFiles (Dir As String) As List
MakeDir (Parent As String, Dir As String)
OpenInput (Dir As String, FileName As String) As InputStream
OpenOutput (Dir As String, FileName As String, Append As Boolean) As OutputStream
ReadList (Dir As String, FileName As String) As List
ReadMap (Dir As String, FileName As String) As Map
ReadString (Dir As String, FileName As String) As String
Size (Dir As String, FileName As String) As Long
WriteList (Dir As String, FileName As String, List As List)
WriteMap (Dir As String, FileName As String, Map As Map)
WriteString (Dir As String, FileName As String, Text As String)
Members Erklärung:
Combine (Dir As String, FileName As String) As String
Gibt den vollen Dateinamen
der gegebenen Datei zurück.
Diese Methode ist nicht für Dateien im Assets Ordner gültig.
Copy (DirSource As String, FileSource As String, DirTarget As String, FileTarget As String)
Kopiert die gegebene
Quelldatei (FileSource) im DirSource Ordner in den DieTarget Ordner mit dem
Namen (FileTarget).
Beachten Sie, daß man keine Dateien in den
Assets Ordner kopieren kann.
Copy2 (In As java.io.InputStream, Out As java.io.OutputStream)
Kopiert alle Daten die sich
im Eingangsstrom (input stream) in den Ausgangsstrom (output stream).
Der Input Stream wird am Ende automatisch geschlossen.
Delete (Dir As String, FileName As String) As Boolean
Löscht die gegebene Datei
(FileName). Wenn FileName ein Ordner ist, muß dieser leer sein um gelöscht werden zu können.
Der Rückgabewert ist gleich True wenn die Datei erfolgreich gelöscht wurde.
Dateien im Assets Ordner können nicht gelöscht werden.
DirAssets As String [read only]
Gibt eine Referenz
(Ordnernamen) zurück zu den Dateien die mit dem Files Manager zugefügt wurden.
Diese Dateien sind nur lesbar (read-only).
DirDefaultExternal As String [read only]
Gibt den externen
Standardordner (Defaultordner) der Applikation die auf dem Packagenamen
basiert.
Der Ordner wird erstellt wenn nötig.
DirInternal As String [read only]
Gibt den Ordner im internen
Gerätespeicher zurück, der zum speichern privater Applikationsdaten verwendet
wird.
DirInternalCache As String [read only]
Gibt den Ordner im
internen Gerätespeicher zurück, der zum speichern privater
Applikationscachedaten (application cache data) verwendet wird
Diese Daten können automatisch gelöscht werden wenn das Gerät unter
Speichermangel leidet.
DirRootExternal As String [read only]
Gibt den Wurzelordner
des externen Speichermediums zurück.
Exists (Dir As String, FileName As String) As Boolean
Gibt True zurück wenn die
gegebene Datei im gegebenen Ordner existiert.
Achtung: Das Android Dateisystem unterscheidet Groß- und Kleinschrift.
Beispiel:
If File.Exists(File.DirDefaultExternal, "MyFile.txt") Then ...
ExternalReadable As Boolean [read only]
Testet ob das externe
Speichermedium lesbar ist.
ExternalWritable As Boolean [read only]
Testet ob das externe
Speichermedium schreibbar ist /und auch lesbar).
GetText (Dir As String, FileName As String) As String
Liest die ganze Datei und
gibt den Text zurück.
Es ist vorweggenommen das die Datei mit UTF8 kodiert wurde.
IsDirectory (Dir As String, FileName As String) As Boolean
Testet ob FileName ein Ordner
ist.
ListFiles (Dir As String) As List
Gibt eine nur lesbare (read
only) Liste zurück mit allen Dateien und Ordnern die im gegebenen Ordner
gespeichert sind.
Eine nicht initialisierte Liste wird zurückgegeben wenn der Ordner nicht erreichbar
ist.
MakeDir (Parent As String, Dir As String)
Erstellt den gegebenen Ordner
(erstellet neue Ordner nach Bedarf).
Beispiel:
File.MakeDir(File.DirInternal, "music/90")
OpenInput (Dir As String, FileName As String) As InputStream
Öffnet die gegebene Datei im
gegebenen Ordner zum Lesen.
Achtung: Das Android Dateisystem unterscheidet Groß- und Kleinschrift.
OpenOutput (Dir As String, FileName As String, Append As Boolean) As OutputStream
Öffnet oder erstellt die
gegebene Datei im gegebenen Ordner zum schreiben.
Wenn Append True ist, werden die neuen Daten an das Ende der gegebenen Datei
angehängt.
ReadList (Dir As String, FileName As String) As List
Leist die ganze Datei und
gibt eine Liste zurück mit allen Zeilen als Strings.
Beispiel:
Dim List1 As List
List1 = File.ReadList(File.DirDefaultExternal, "1.txt")
For i = 0 to List1.Size - 1
Log(List1.Get(i))
Next
ReadMap (Dir As String, FileName As String) As Map
Liest die ganze Datei und
behandelt jede Zeile wie ein Schlüsselwortpaar (Strings).
Siehe hier, Properties format
für mehr Informationen über das aktuelle Format.
Man kann File.WriteMap benutzen um die Map in eine Datei zu schreiben.
Achtung: Die Reihenfolge der Einträge in der Map kann verschieden sein von der
in der Datei.
ReadString (Dir As String, FileName As String) As String
Liest die ganze Datei und
gibt den Inhalt als String zurück.
Beispiel:
Dim text As String
text = File.ReadString(File.DirRootExternal, "text
files/1.txt")
Size (Dir As String, FileName As String) As Long
Gibt die Länge der gegebenen
Datei in Bytes zurück.
Diese Methode ist nicht für Dateien im Assets Ordner gültig.
WriteList (Dir As String, FileName As String, List As List)
Schreibt jeden Eintrag der
gegebenen Liste in eine einzige Zeile in die Datei.
Achtung: Wenn ein Eintrag den Wert CRLF enthält, wird dieser als zwei Zeilen
gespeichert (was aber zwei Einträge erstellt wenn die Datei mit ReadList zurück
gelesen wird).
Alle Werte werden zu Strings konvertiert.
Beispiel:
File.WriteList (File.DirInternal, "mylist.txt", List1)
WriteMap (Dir As String, FileName As String, Map As Map)
Erstellt eine neue Datei und
schreibt die gegebene Map. Jedes Schlüsselwortpaar wird in eine einzige Zeile
gespeichert.
Alle Werte werden zu Strings konvertiert.
Siehe
hier, Properties format
für mehr Informationen über das aktuelle Format.
Man kann File.ReadMap benutzen um die Map von einer Datei zu lesen.
WriteString (Dir As String, FileName As String, Text As String)
Schreibt den gegebenen Text
in eine neue Dateie.
Beispiel:
File.WriteString(File.DirRootExternal, "text files/1.txt")
Ein Strom (stream) von dem man lesen kann. Normalerweise wird ein Strom
(stream) auf ein Objekt "höherer Ebene" geleitet, wie TextReader, das
das Lesen behandelt.
Man kann File.OpenInput benutzen um einen InputStream zu erhalten.
Events:
Keine
Members:
BytesAvailable
As Int
Close
InitializeFromBytesArray
(Buffer() As Byte, StartOffset As Int, MaxCount As Int)
IsInitialized
As Boolean
ReadBytes
(Buffer() As Byte, StartOffset As Int, MaxCount As Int) As Int
Members Erklärung:
Gibt eine Schätzung
der Anzahl der verfügbaren Bytes, ohne zu blockieren.
Close
InitializeFromBytesArray (Buffer() As Byte, StartOffset As Int, MaxCount As Int)
File.OpenInput
benutzen um einen InputStream zu bekommen.
Diese Methode sollte
verwendet werden, um Daten aus einem Byte-Array zu lesen.
Initialisiert den
InputStream und legt ihn aus zum lesen aus dem gegebenen Byte-Array.
StartOffset - Das
erste Byte, das gelesen werden soll.
MaxCount - Maximale
Anzahl der zu lesenden Bytes.
IsInitialized As Boolean
ReadBytes (Buffer() As Byte, StartOffset As Int, MaxCount As Int) As Int
Liest MaxCount Anzahl
an Bytes von dem Stream und schreibt sie in den gegebenen Buffer.
Das erste Byte wird ab StartOffset in den Buffer geschrieben.
Gibt die Anzahl der zur Zeit gelesenen Bytes zurück.
Gibt -1 zurück wenn es keine Bytes mehr zu lesen gibt.
Gibt ansonsten mindestens ein Byte zurück.
Beispiel:
Dim buffer(1024) As byte
count = InputStream1.ReadBytes(buffer, 0,
buffer.length)
Ein Strom (stream) in den man schreiben kann. Normalerweise wird ein Strom
(stream) auf ein Objekt "höherer Ebene" geleitet, wie TextWriter, das
das Schreiben behandelt.
Man kann File. OpenOutput benutzen um einen OutputStream zu erhalten.
Events:
Keine
Members:
Close
Flush
InitializeToBytesArray
(StartSize As Int)
IsInitialized
As Boolean
ToBytesArray
As Byte()
WriteBytes
(Buffer() As Byte, StartOffset As Int, Length As Int)
Members Erklärung:
Flush
InitializeToBytesArray (StartSize As Int)
File. OpenOutput
benutzen um einen OutputStream zu bekommen.
Diese Methode sollte
verwendet werden, um Daten in ein Byte-Array zu schreiben.
StartSize – Die
Startgröße des internen
Byte-Arrays. Die Größe wird erhöht wenn
nötig.
Gibt eine Kopie des
internen Byte-Arrays zurück. Kann nur benutzt werden wenn der OutputStream mit
InitializeToBytesArray initialisiert wurde.
WriteBytes (Buffer() As Byte, StartOffset As Int, Length As Int)
Schreibt den Buffer
in den Stream. Das erste geschriebene Byte ist Buffer(StartOffset),
und das letzte zu schreibende Byte ist Buffer(StartOffset + Length - 1).
List einen Text von einem untergeordneten Stream.
Events:
Keine
Members:
Close
Initialize (InputStream As java.io.InputStream)
Initialize2 (InputStream As java.io.InputStream,
Encoding As String)
IsInitialized
As Boolean
Read (Buffer() As Char, StartOffset As Int, Length As Int) As Int
ReadAll As String
ReadLine As String
ReadList As List
Ready As Boolean
Skip
(NumberOfCharaceters As Int) As Int
Members Erklärung:
Initialize (InputStream As java.io.InputStream)
Initialisiert den
TextReader und verbindet ihn mit dem gegebenen InputStream mit UTF8 Kodierung.
Initialize2 (InputStream As java.io.InputStream, Encoding As String)
Initialisiert den
TextReader und verbindet ihn mit dem gegebenen InputStream mit einer
spezifischen Kodierung (Encoding).
Erkannte Kodierungen:
IsInitialized As Boolean
Read (Buffer() As Char, StartOffset As Int, Length As Int) As Int
Liest Buchstaben vom Stream
und schreibt sie in den Buffer.
Liest eine Anzahl bis zu Length Buchstaben und schreibt sie in den Buffer ab
der StartOffset Stelle.
Gibt die Anzahl der zur Zeit gelesenen Bytes zurück.
Gibt -1 zurück wenn es keine Bytes mehr zu lesen gibt.
ReadAll As String
Liest den restlichen Text und
schließt den Stream.
ReadLine As String
Liest die nächste
Zeile von dem Stream. Die "new line" Buchstaben werden nicht
zurückgegeben.
Gibt Null zurück wenn es keine Buchstaben mehr zu lesen gibt.
Beispiel:
Dim Reader As TextReader
Reader.Initialize(File.OpenInput(File.InternalDir, "1.txt"))
Dim line As String
line = Reader.ReadLine
Do While line <> Null
Log(line)
line = Reader.ReadLine
Loop
Reader.Close
ReadList As List
Liest den restlichen
Text und gibt eine Liste zurück mit den Zeilen gefüllt.
Schließt den Stream am Ende
des Lesens.
Ready As Boolean
Testet ob zumindest ein
Buchstabe zum lesen bereit ist für ein nicht blockierendes Lesen.
Skip (NumberOfCharaceters As Int) As Int
Überspringt die gegebene
Anzahl Buchstaben.
Gibt die Anzahl der zur Zeit übersprungenen Buchstaben zurück (diese Anzahl
kann kleiner sein als der gegebene Wert).
Schreibt einen Text in den untergeordneten Stream.
Beispiel:
Dim Writer As TextWriter
Writer.Initialize(File.OpenOutput(File.DirDefaultExternal, "1.txt", False))
Writer.WriteLine("This is the first
line.")
Writer.WriteLine("This is the
second line.")
Writer.Close
Events:
Keine
Members:
Close
Flush
Initialize (OutputStream As java.io.OutputStream)
Initialize2 (OutputStream As java.io.OutputStream,
Encoding As String)
IsInitialized
As Boolean
Write (Text As String)
WriteLine (Text As String)
WriteList (List As List)
Members Erklärung:
Schlißt den Stream (Strom).
Flush
Initialize (OutputStream As java.io.OutputStream)
Initialisiert den
TextWriter und verbindet ihn mit dem gegebenen OutputStream mit UTF8 Kodierung.
Initialize2 (OutputStream As java.io.OutputStream, Encoding As String)
Initialisiert den TextWriter
und verbindet ihn mit dem gegebenen OutputStream mit einer spezifischen
Kodierung (Encoding).
Erkannte Kodierungen:
Schreibt den gegebenen Text
zu dem Stream.
WriteLine (Text As String)
Schreibt den
gegebenen Text zu dem Stream gefolgt von einem "new line" Buchstaben.
Beispiel:
Dim Writer As TextWriter
Writer.Initialize(File.OpenOutput(File.DirDefaultExternal,
"1.txt", False))
Writer.WriteLine("This is the first
line.")
Writer.WriteLine("This is the
second line.")
Writer.Close
WriteList (List As List)
Schreibt jeden
Eintrag der Liste in eine einzige Zeile.
Achtung: Wenn ein Eintrag den Wert CRLF enthält, wird dieser als zwei Zeilen
gespeichert (was aber zwei Einträge erstellt wenn die Datei mit ReadList zurück
gelesen wird).
Alle Werte werden zu Strings konvertiert.