Hallo zusammen,
leider konnte mir beim letzten Mal keiner helfen, zumindest hat keiner geantwortet... Ich hoffe, dass Ihr dieses Mal einen Rat wisst
Ich bin ein wenig verzweifelt. Ich muss ein Programm in schreiben, bei dem aus einer Datei die Werte ausgelesen und anschließend auch ausgegeben werden können. In der Datei liegen die Werte in folgendem Format vor:
"TIME","MAF","MAP"
0,0.23.98
2.5,3.2,75
Das ist nur ein Beispiel. Ich lese nun also zunächst die Parameter aus: TIME, MAF und MAP. Diesen sind nun folgende Werte zuzuweisen:
TIME: 0 und 2.5
MAF: 0.23 und 3.2
MAP: 98 und 75
Im Endeffekt sind die Dateien nachher viel grösser und der Umfang ist vorher nie genau festgelegt, so dass ich die Grösse des Feldes nicht einschätzen kann, weder in Höhe, noch in Breite.
Also hatte ich mir überlegt, dass ich eine ArrayList mache, die aus Objekten des Typs ArrayList besteht. So kann ich also beliebig viele Elemente anfügen und diese dann in der Breite beliebig auffüllen. Aber das geht irgendwie nicht. Ich öffne die Datei und kann eine ArrayList mit den Parametern anlegen. Die gibt das Programm dann auch aus. Wenn ich aber den Parametern die Werte zuweisen möchte, dann meldet sich der Compiler und sagt, dass die Datentypen nicht zusammenpassen.
In folgendem Beispiel habe ich nur die Problemstelle eingefügt.
c ist die aktuelle Zeile der Datei. Ich bringe die unterschiedlichen Werte zu den Parametern zunächst in ein String Format, weil sich auch diese Formate ändern. Einige Werte kennen nur ON / OFF, andere haben bis zu 7 verschiedene, vordefinierte Zustände, andere sind reine Zahlen...
zeileDaten und datenliste sind ArrayListen mit dem ersten Teil ist datenliste bereits gefüllt worden. Ich habe oben extra darauf geachtet, dass datenliste mit zeileDaten "vorgefüttert" wird, so dass ich diese Elemente nur noch auslesen und dann zeilenweise "anreichern" muss.
Aber es gibt hier immer wieder Probleme. Mein Mozilla ist randvoll mit Java Seiten und Google-Tabs, also bitte: Ich habe gesucht wie ein Irrer. Aber ich finde einfach keine Lösung zu meinem Problem.
Falls also jemand Rat weiß, bitte meldet Euch.
Vielen Dank
Marc
leider konnte mir beim letzten Mal keiner helfen, zumindest hat keiner geantwortet... Ich hoffe, dass Ihr dieses Mal einen Rat wisst
Ich bin ein wenig verzweifelt. Ich muss ein Programm in schreiben, bei dem aus einer Datei die Werte ausgelesen und anschließend auch ausgegeben werden können. In der Datei liegen die Werte in folgendem Format vor:
"TIME","MAF","MAP"
0,0.23.98
2.5,3.2,75
Das ist nur ein Beispiel. Ich lese nun also zunächst die Parameter aus: TIME, MAF und MAP. Diesen sind nun folgende Werte zuzuweisen:
TIME: 0 und 2.5
MAF: 0.23 und 3.2
MAP: 98 und 75
Im Endeffekt sind die Dateien nachher viel grösser und der Umfang ist vorher nie genau festgelegt, so dass ich die Grösse des Feldes nicht einschätzen kann, weder in Höhe, noch in Breite.
Also hatte ich mir überlegt, dass ich eine ArrayList mache, die aus Objekten des Typs ArrayList besteht. So kann ich also beliebig viele Elemente anfügen und diese dann in der Breite beliebig auffüllen. Aber das geht irgendwie nicht. Ich öffne die Datei und kann eine ArrayList mit den Parametern anlegen. Die gibt das Programm dann auch aus. Wenn ich aber den Parametern die Werte zuweisen möchte, dann meldet sich der Compiler und sagt, dass die Datentypen nicht zusammenpassen.
In folgendem Beispiel habe ich nur die Problemstelle eingefügt.
Java:
if ((c != 44) && (c != '0'))
{
parameter=parameter + c;
}
if ((c == 44) && (endeParameterliste == false))
{
parameter.replaceAll("\"","");
anzahlParameter++;
System.out.println("anzahlParameter ="+anzahlParameter);
zeileDaten.add(parameter);
datenliste.add(zeileDaten);
zeileDaten.clear(); // geschriebenes Element wieder löschen
System.out.println(parameter);
parameter="";
}
....
for (int i=0;i<zeile.length();i++)
{
c = zeile.charAt(i);
if ((c != 44) && (c != 0)) wert = wert + c;
else
{
zeileDaten=datenliste.get(counter);
zeileDaten.add(wert);
datenliste.set(counter,zeileDaten);
counter++;
wert = "";
}
}
c ist die aktuelle Zeile der Datei. Ich bringe die unterschiedlichen Werte zu den Parametern zunächst in ein String Format, weil sich auch diese Formate ändern. Einige Werte kennen nur ON / OFF, andere haben bis zu 7 verschiedene, vordefinierte Zustände, andere sind reine Zahlen...
zeileDaten und datenliste sind ArrayListen mit dem ersten Teil ist datenliste bereits gefüllt worden. Ich habe oben extra darauf geachtet, dass datenliste mit zeileDaten "vorgefüttert" wird, so dass ich diese Elemente nur noch auslesen und dann zeilenweise "anreichern" muss.
Aber es gibt hier immer wieder Probleme. Mein Mozilla ist randvoll mit Java Seiten und Google-Tabs, also bitte: Ich habe gesucht wie ein Irrer. Aber ich finde einfach keine Lösung zu meinem Problem.
Falls also jemand Rat weiß, bitte meldet Euch.
Vielen Dank
Marc