Hi
Ich habe ein Problem ich lasse meine festplatte nach mp3 dateien durchsuchen das klappt auch soweit nur hab ich ein Problem ich bekomme nach einer weile diesen fehler:
Ich habe eine Methode welche dir mp3 datein in eine DB schreibt wenn es aber ein Ordner ist dann ruft sich die methode selber wieder auf! Das geht auch eine weile aber bei ca 300 datein kommt dann diese Exception.
Wie kann ich das verhinder?
Help
Ich habe ein Problem ich lasse meine festplatte nach mp3 dateien durchsuchen das klappt auch soweit nur hab ich ein Problem ich bekomme nach einer weile diesen fehler:
Code:
Exception in thread "Thread-10" java.lang.OutOfMemoryError: too many window handles
at sun.awt.windows.WToolkit.eventLoop(Native Method)
at sun.awt.windows.WToolkit.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Ich habe eine Methode welche dir mp3 datein in eine DB schreibt wenn es aber ein Ordner ist dann ruft sich die methode selber wieder auf! Das geht auch eine weile aber bei ca 300 datein kommt dann diese Exception.
Wie kann ich das verhinder?
Code:
private int addFilesToVector(File[] fileArray, int count){
for (int i = 0; i < fileArray.length; i++){
try{
if (fileArray[i].isDirectory()){
count = addFilesToVector(fileArray[i].listFiles(), count );
status.setText("Bitte warten! Anzahl: "+a);
System.out.println(fileArray[i].getAbsolutePath());
}
else{
if(fileArray[i].getName().endsWith(".mp3")){
result.add( fileArray[i] );
file=new Stringformater().getFormatStringEinzeln(fileArray[i]);
if (option==2 || !lesen.datenSchonVorhanden(file,tabName)){
schreiben.datenlöschen(file,tabName);
schreiben.setDatenToTable(file,tabName);
a++;
}
else if (option!=3)
{
option= new Popup().showOptionsÜberschreiben("Soll die Datei \n\""+
file.elementAt(4)+"\"\n"+
"überschrieben werden?");
if (option==2 || option==0) {
schreiben.datenlöschen(file,tabName);
schreiben.setDatenToTable(file,tabName);
a++;
}
}
}
}
}
catch(Exception e){
e.printStackTrace();
System.out.println("Suchen Ordner: "+e);
}
}
count += fileArray.length;
return a;
}
Help