Hallo Ihr Gleichgesinnten!
Für mich (als noch Azubi) selbst nach etlichten Stunden des Tüfteln unlösbar...:
Ich habe eine Windows Ordner Hierarchie mit zwei Ebenen (nur aus Ordnern bestehend!) :
Ebene1
|_Ebene2
|_Ebene2
|_Ebene2
Ebene1
|_Ebene2
|_Ebene2
|_Ebene2
...
>>>>>> Ebene1-Elemente werden in "KlasseEbeneEins" per JFileChooser in ein File[] gepackt:
>>>>>> Aufruf der Methode "chooseEbene1" (gibt ja File[] ebeneEins zurück) in Klasse "KlasseEbeneEinsView":
Was ich brauche sind alle Ebene2-Elemente (sind Ordner) in irgendeiner Collection, List, oder des gleichen, damit ich mit den "File-Methoden" arbeiten kann, so dass ich auf deren Dateien (keine Ordner) zugreifen kann :
>>>>>> Aufruf der Methode "getEbeneZwei()" in Klasse "KlasseEbeneEinsView":
--------------
Warum bekomm ich nun an der besagten Stelle eine NullPointerException?
Die Methode "getEbeneZwei()" ist womöglich umständlich gelöst, hatte dort aber schon unzählige Möglichkeiten ausprobiert, aber es kam an der Stelle, an der die Elemente der EbeneZwei zu einer Collection zusammengefasst worden sind, immer zu einer NullPointerException.
Was wäre eine alternative Lösung??
Wär super wenn sich dem Problem jemand an annehmen würde...!
Dankeschön und nette Grüße,
g.rottig
PS: Tut mir Leid, dass die Zeilen so lang sind, sodass man horizontal scrollen muss!! ich hass sowas, finde aber grad die Ursache nicht dafür!
Für mich (als noch Azubi) selbst nach etlichten Stunden des Tüfteln unlösbar...:
Ich habe eine Windows Ordner Hierarchie mit zwei Ebenen (nur aus Ordnern bestehend!) :
Ebene1
|_Ebene2
|_Ebene2
|_Ebene2
Ebene1
|_Ebene2
|_Ebene2
|_Ebene2
...
>>>>>> Ebene1-Elemente werden in "KlasseEbeneEins" per JFileChooser in ein File[] gepackt:
Code:
public class KlasseEbeneEins {
private static File[] ebeneEins;
public static File[] getEbeneEins() {
return ebeneEins;
}
public static void setEbeneEins(File[] aEbeneEins) {
ebeneEins= aEbeneEins;
}
public File[] chooseEbene1() {
......
ebeneEins = fc.getSelectedFiles();
........
return ebeneEins ;
}
>>>>>> Aufruf der Methode "chooseEbene1" (gibt ja File[] ebeneEins zurück) in Klasse "KlasseEbeneEinsView":
Code:
public class KlasseEbeneEinsView extends javax.swing.JDialog {
private static KlasseEbeneEins kEE = new KlasseEbeneEins();
private void kEEButtonChooseEbeneEinsActionPerformed(java.awt.event.ActionEvent evt) {
kEE.chooseEbeneEins();
}
}
Was ich brauche sind alle Ebene2-Elemente (sind Ordner) in irgendeiner Collection, List, oder des gleichen, damit ich mit den "File-Methoden" arbeiten kann, so dass ich auf deren Dateien (keine Ordner) zugreifen kann :
Code:
public class KlasseEbeneZwei {
public List<File>/*oder sonst was!! siehe oben*/ getEbeneZwei() throws IOException {
List<File> allElementsEbeneZwei = new ArrayList<File>();
Collection elementsOfOneEbeneEins;
File[] ebeneEins = KlasseEbeneEins.getEbeneEins();
if (ebeneEins != null) {
/**
* runs through the list (Files) of ebeneEins
*/
for (int ebeneEinsElement = 0; ebeneEinsElement < ebeneEins.length; ebeneEinsElement++) {
/**
* setting the 'elementsOfOneEbeneEins'-collection null, for the next EbeneEins
*/
elementsOfOneEbeneEins = null;
/**
* runs through the EbeneZwei-directories of the actuall EbeneEins and
* adds these to the collection 'elementsOfOneEbeneEins '
*/
for (int ebeneZweiElement = 0; ebeneZweiElement < ebeneEins [ebeneEinsElement].listFiles().length; ebeneZweiElement ++) {
elementsOfOneEbeneEins .add(ebeneEins [ebeneEinsElement].listFiles()[ebeneZweiElement ]);
}
/**
*In der folgenden Code-Zeile kommt der NullPointer!!!
*obwohl "elementsOfOneEbeneEins" Files enthält (geprüft)
*/
allElementsEbeneZwei.addAll(elementsOfOneEbeneEins);
}
} else {
System.out.println("No EbeneEins-Elements selected yet!");
}
return allElementsEbeneZwei;
}
>>>>>> Aufruf der Methode "getEbeneZwei()" in Klasse "KlasseEbeneEinsView":
Code:
public class KlasseEbeneEinsView extends javax.swing.JDialog {
private static KlasseEbeneEins kE = new KlasseEbeneEins();
//Hier nochmal die "chooseEbeneEins()"-Methode
private void kEEButtonChooseEbeneEinsActionPerformed(java.awt.event.ActionEvent evt) {
kEE.chooseEbeneEins();
}
//
private void kEZButtonChooseEbeneZweiActionPerformed(java.awt.event.ActionEvent evt) {
KlasseEbeneZwei kEZ = new KlasseEbeneZwei ();
kEZ.getEbeneZwei()();
}
}
--------------
Warum bekomm ich nun an der besagten Stelle eine NullPointerException?
Die Methode "getEbeneZwei()" ist womöglich umständlich gelöst, hatte dort aber schon unzählige Möglichkeiten ausprobiert, aber es kam an der Stelle, an der die Elemente der EbeneZwei zu einer Collection zusammengefasst worden sind, immer zu einer NullPointerException.
Was wäre eine alternative Lösung??
Wär super wenn sich dem Problem jemand an annehmen würde...!
Dankeschön und nette Grüße,
g.rottig
PS: Tut mir Leid, dass die Zeilen so lang sind, sodass man horizontal scrollen muss!! ich hass sowas, finde aber grad die Ursache nicht dafür!