Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Ich habe einen .txt file der etwa so aussieht:
Format: datum, börskurs
Ericsson
02-08-01 7.15
02-08-02 6.72
02-08-05 5.56
02-08-06 5.49
02-08-07 5.63
02-08-08 6.18
02-08-09 6.00
02-08-12 6.10
...
....
Electrolux
...
...
...
Ich lese den file mit "Simple Text File Reader" ein:
Code:
String[] kurser = new String [1000];
// Öffne file kurser.txt
SimpleTextFileReader inKurser = new SimpleTextFileReader("kurser.txt");
String radKurser;
int iKurser = 0;
// Lies eine zeile bis es keine mer gibt
while ( (radKurser = inKurser.readLine()) != null)
{
StringTokenizer stKurser = new StringTokenizer(radKurser);
while (stKurser.hasMoreTokens())
kurser[iKurser] = stKurser.nextToken();
iKurser++;
}
}
und so weiter
das problem ist:
ich will nur die kurse einlesen in den array, mirt anderen worten 7,15 6,72 usw und das in drei verschiedene arrays, je fur jede aktie
wie mache ich das
irgendwie mit string tokenizer aber es funktioneiert nicht
wenn jemand einfach weis wie man alles ausser den kurs einliest bin ich sehr geholfen
Steht denn von Anfang an fest das du nur von 3 Aktien - die Kurse aufgelistet hast? Bzw. stehen die jeweiligen Firmen vorher fest?
Eine Lösung, nicht sehr elegant allerdings...:
Du liest die Zeile ein, schaust ob es sich dabei um eine von deinen 3 Firmen handelt (->equals). ( Du kannst die drei Namen ja in nem String - Array speichern oder so )
Im folgenden unterteilst du die Zeilen die du einliest mit z.B. StringTokenizer. Der erste Token ist das Datum, sicherheitshalber solltest du mit "hasMoreTokens()" anfangs überprüfen ob danach tatsächlich noch der für dich relevante Token folgt (Kurs). Diesen kannst du dann in einer Liste oder sonst wo speichern.
Das ganze Spiel machst du solange bis der nächste Firmenname erscheint und es fängt wieder von vorne an.
Geht sicher sehr viel schöner, war gerad nur das erste woran ich gedacht habe.
Btw. steht eigentlich vorher fest wieviele Aktienkurse aufgeführt sind ?
StringTokenizer kannst Du verwenden, wenn Du feste Strings (zB immmer "." oder so) hast und
dann danach aufteilen willst. Hab's mir jetzt nicht soo 100%ig angesehen, aber wenn Du immer
Daten in der Art "int'-'int'-'int " hast, dann kannst Du Die ja mal Pattern ansehen...
Wenn die einzulesene Zeile wie oben aussieht, dann kannst du mittels StringTokenizer als Delimiter das Leerzeichen benutzen.
workflow:
1. Zeile einzeln in einem String einlesen
2. Methode z.B. splitKurse(String kurs) aufrufen
3. Methode splitKurse() teilt String jeweils bis zum Delimiter
4. gewünschtes String weiterverarbeiten (hier: 7.15) mit z.B. der Methode doSomething(7.15)
Alternativ dazu:
1. all Daten in einem Array speichern
2. und dann in einer for-Schleife splitKurse() aufrufen