Hallo,
über eine while-Schleife habe ich Daten aus einer Datei gelesen und im gleichen Schritt in ein ArrayList eingelesen (Zeile 60).
Anschließend möchte ich den Inhalt meiner ArrayList wiedergeben (Zeile 75+76).
Aber es funktioniert nicht (java.util.ConcurrentModificationException). Ich hab mich schon wegen dieser Exception im Forum umgesehen und einen Rat hier eingebaut: Die Daten werden schon nicht mehr über einen Iterator, sondern bereits über einen ListIterator eingelesen. Aber es hilft nicht. Die Exception bleibt.
Könnte mir da jemand weiter helfen, bitte?
über eine while-Schleife habe ich Daten aus einer Datei gelesen und im gleichen Schritt in ein ArrayList eingelesen (Zeile 60).
Anschließend möchte ich den Inhalt meiner ArrayList wiedergeben (Zeile 75+76).
Aber es funktioniert nicht (java.util.ConcurrentModificationException). Ich hab mich schon wegen dieser Exception im Forum umgesehen und einen Rat hier eingebaut: Die Daten werden schon nicht mehr über einen Iterator, sondern bereits über einen ListIterator eingelesen. Aber es hilft nicht. Die Exception bleibt.
Java:
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.StringWriter;
import java.util.*;
import static java.lang.System.*;
import org.apache.commons.lang.StringUtils;
public class MainClass {
public static void main(String[] args) {
StringUtils.containsNone("ABCD", "!@#$%^&*");
String alpha = "Body__53461.wrl";
String Zwischenstring1 = "Zwischen-String.dat";
File VRMLFileName = new File(alpha);
CharSequence PointMarker = "point [";
CharSequence PointMarkerEnd = "]";
CharSequence FinalEnd = "] }";
//Array List for all surfaces
ArrayList<String> AllAreas_1 = new ArrayList<String>();
ListIterator<String> listIter = AllAreas_1.listIterator();
try
{
BufferedWriter fw2 = new BufferedWriter(new FileWriter(Zwischenstring1, true));
BufferedReader singleVRMLread2 = new BufferedReader(new FileReader(alpha));
boolean offen = false;
while (singleVRMLread2 != null)
{
String zeile = singleVRMLread2.readLine();
offen = false;
if (zeile.contains(PointMarker))
{
offen = true;
}
if (zeile.contains(FinalEnd))
break;
String zeile2 = zeile;
if(offen == true )
{ while (StringUtils.containsNone(zeile2,"]") == true)
{zeile2 = singleVRMLread2.readLine();
System.out.println(zeile2);
AllAreas_1.add(zeile2);
System.out.println("Press Enter to continue...");
System.in.read();
}
}
}
{offen = false; }
}
catch (IOException ioex)
{System.out.println(ioex.getMessage());
}
while (listIter.hasNext())
System.out.println(listIter.next());
} }
Könnte mir da jemand weiter helfen, bitte?