Hallo,
ich erzeuge einen sehr langen String, welcher danach in en CSV File gepseichert wird.
Leider dauert das Erzeugen des Strings bei rund 12000 Zeilen und 8 Spalten fast 5min. Das kann es ja nicht sein. Der Code ist denkbar einfach
Wenn ich die Zeilen mit text+= entferne läuft die Schleife in einem Bruchteil einer Sekunde durch. Sobald ich die erhaltene Werte an den String anhänge wird es unerträglich langsam.
Warum ist das? Was kann man ändern?
Gruß
Claus
ich erzeuge einen sehr langen String, welcher danach in en CSV File gepseichert wird.
Leider dauert das Erzeugen des Strings bei rund 12000 Zeilen und 8 Spalten fast 5min. Das kann es ja nicht sein. Der Code ist denkbar einfach
Java:
String text = "";
int rows = model.getRowCount();
int columns = model.getColumnCount();
for(int i = 0; i < rows; i++)
{
for(int j = 0; j < columns; j++)
{
String value = (String) model.getValueAt(i, j);
if(value != null)
text+="=\""+value+"\"";
if(j < rows - 1)
text+=";";
}
text+="\r\n";
}
Wenn ich die Zeilen mit text+= entferne läuft die Schleife in einem Bruchteil einer Sekunde durch. Sobald ich die erhaltene Werte an den String anhänge wird es unerträglich langsam.
Warum ist das? Was kann man ändern?
Gruß
Claus
Zuletzt bearbeitet von einem Moderator: