So, zum Abschluss noch meine derzeitige Lösung
DIM f AS FolderItem 'Die Quell-Datei
DIM ti AS TextInputStream 'So wird sie eingelesen
DIM tmp1(1), tmp2(-1) AS String 'Wird zum Auflösen benötigt
DIM Delimiter AS String = ";" 'Festlegen des Trennzeichens der
Spalten, hier Semikolon als Beispiel
DIM Zielarray(-1,-1) AS String 'Da wird alles abgespeichert
DIM Zeilen, Spalten, i, j AS Integer 'Ist selbserklärend
'Öffnen der Datei
f=GetOpenFolderItem("text")
IF f <> NIL THEN
ti=f.OpenAsTextFile
tmp1(0)=ti.ReadAll
ti.Close
'Definieren des Zeilenendezeichens
tmp1(0)=ReplaceLineEndings(tmp1(0), EndOfLine)
'Bestimmen der Zeilen
tmp2=Split(tmp1(0), EndOfLine)
Zeilen=UBound(tmp2)
'Bestimmen der Spalten
Spalten=UBound(Split(tmp2(0), Delimiter))
'Zielarray anpassen und füllen
'Als erstes wird angegeben, wieviele Zeilen und Spalten das Array haben
soll
REDIM Zielarray(Zeilen, Spalten)
'die -1 sind notwendig da die Indexe durchlaufen werden und ein Rechner bei
0 anfängt zu zählen und nicht bei 1. Die erste Zeile ist also Zielarray(0,x)
die letzte ist Zielarray(Zeilen-1,x)
FOR i=0 TO Zeilen-1
tmp1=Split(tmp2(i), Delimiter)
FOR j=0 TO Spalten-1
Zielarray(i,j)=tmp1(j)
NEXT
NEXT
END IF
PS: Christian, ReplaceLineEndings hatte ich schon gefunden, ich wies nur
darauf hin, dass Andys Tipp mit System Objekt mich nicht wirklich weiter
brachte. Er meinte ja auch ReplaceLineEndings, davon steht in System Objekt
aber nichts. Da hätte ich mich totsuchen können und wäre dennoch nicht drauf
gekommen was er meinte.
Am 26.11.2008 9:32 Uhr schrieb "Christian Hahn" unter
<[EMAIL PROTECTED]>:
> Hallo, Michael,
> in der Online-Hilfe ins Suchfenster eingeben "ReplaceLineEndings",
> dann bekommst du die Informationen über die globale Funktion.
> beste Grüße, Christian Hahn.
>
> ----- Original Message -----
> From: "Michael K ö hler" <[EMAIL PROTECTED]>
> To: "Realbasic Mailinglist" <[email protected]>
> Sent: Tuesday, November 25, 2008 11:33 PM
> Subject: Re: Aus Datei in ein Array einlesen
>
>
> Hm, OK. Von ReplaceLineEndings steht bei System Objekt nix. Hätte ja sein
> können, dass du was anderes meintest ;)
>
>
> Am 25.11.2008 12:51 Uhr schrieb "Andy Fuchs" unter <[EMAIL PROTECTED]>:
>
>> Thomas hat's doch schon geschrieben:
>>
>>> 1. Dateiinhalt mit ReadAll in einen String einlesen
>>> 2. Mit der Funktion "ReplaceLineEndings(str, EndOfLine)" die Trenner ins
>>> Default-Format umwandeln.
>>> 3. Mit Funktion Split(str, EndOfLine) ein Array der Zeilen erzeugen.
>>
>> andy
>>
>> On 25.11.08 12:45, "Michael Köhler" <[EMAIL PROTECTED]> wrote:
>>
>>> Hm...hab mal in der Sprachreferenz geschaut unter System Objekt aber ich
>>> bin
>>> wohl zu blind, über den Zeilentrenner hab ich da nix gelesen. Was genau
>>> meinst du also? Ich fürchte ich kann dir da grad leider nicht folgen.
>>>
>>> Grüße Michael
>>>
>>> PS: Und nein, du bist mir nicht zu nahe getreten. Ich find Tipps ja immer
>>> gut. Es gibt ja meist immer mehr als nur eine Blickrichtung.
>>>
>>>
>>> Am 25.11.2008 0:36 Uhr schrieb "Andy Fuchs" unter <[EMAIL PROTECTED]>:
>>>
>>>> Hallo Michael,
>>>>
>>>> ohne Dir zu Nahe treten zu wollen, aber hast Du's mal mit dem
>>>> RB-Handbuch
>>>> versucht? Dynamische Zeilentrennerist doch kalter Kaffee... Tipp:
>>>> System-Object.
>>>>
>>>> andy
>>>>
>>>>
>>>> On 24.11.08 23:30, "Michael Köhler" <[EMAIL PROTECTED]> wrote:
>>>>
>>>>> müsste. Bin jetzt letzte Woche aber auch nicht wirklich dazu gekommen
>>>>> weiter
>>>>> zu machen, bzw. mir was schlaueres zu überlegen statt das File erstmal
>>>>> Zeilenweise zu lesen und die Zeilen dabei zu zählen und dann beim
>>>>> zweiten
>>>>> Mal erst mein Array fülle.
>>>>
>>>>
>>>
>>>
>>>
>>
>>
>
>
>