array.length-Problem

  • Themenstarter Themenstarter Lennyx
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
ähm wird die datei doch gar nicht? ^^
die umbenennung findet ja erst in der rename-klasse statt.
und @aradauer:
mein array ist NICHT null, die schleife greift nicht (ich habs extra nochmal überprüft) und ich warte immer noch auf deine erklärung, wie mein array null sein und trotzdem die länge 16 haben kann 😉
Schnallst du es nicht, er gibt dir eine 16 aus weil der Ordner den, du davor verarbeitet hast eine Größe von 16 hatte. Und der "Momentan"(der ja keiner ist) schmeißt dir, dann eine Exception

Falls du mir nicht glaubst dann mache, mal folgendes:
Java:
 ...
if(dateien.exists() ){
                String[] mp3s = dateien.list();
                System.out.println(mp3s.length);
               //Hier lag  auch der Hund begraben^^ 
                if (mp3s.length==0  || mp3s.length == null ){
                    System.out.println("Oh nein ich bin doch kein Ordner mit Datein "); // <== Einfügen
                    continue;
                } else{
                    System.out.println("Ja ich bin ein Ordner"); // <== Einfügen
                    for(int j=0; j<mp3s.length;j++){
                     if(mp3s[j].endsWith(".mp3")){
...

Versuche es, und du wirst es verstehen
 
Zuletzt bearbeitet:
ach gottchen, alarm zurück xD
das ganze funktioniert doch ... also das programm verändert den namen der mp3s anhand der id3-tags. und es sah aus, als ob es nicht funktionieren würde,weil iwer so intelligent war, und den titel-id3tag zb mit 01 Carousel zu betiteln. genau sowas wollte ich ja ursprünglich vermeiden.
fiel mir auf, als ich mir die id3-tags ausgeben ließ. überprüfung mit nem andern mp3s-ordner, es funktioniert.

problem scheint also gelöst (auch wenn ich immer noch nich verstehe, wie, weil eigtl wurde vom ablauf her nix verändert, da isDirectory() immer true is und er nie in die abbruchschleife springt ... geschweige denn wie er in einer zeile ne exception aufrufen und sie gleihczeitig aufrufen kann .....)

vielen dank an alle beteiligten und ihre mühen!!!
:toll: :applaus:


//und @ apokalypse, keine ahnung, warum du darauf kommst. der aktuelle ordner hat 16 dateien und der code wird richtig ausgeführt wie oben beschrieben. glaub mir einfach. ganz blöd bin ich nicht, auch als frau nicht, ich programmiere auch schon ein jahr lang ab und zu in java.
 
Java:
 @ apokalypse, keine ahnung, warum du darauf kommst. der aktuelle ordner hat 16 dateien und der code wird richtig ausgeführt wie oben beschrieben. glaub mir einfach. ganz blöd bin ich nicht, auch als frau nicht, ich programmiere auch schon ein jahr lang ab und zu in java.

Das habe ich nie gedacht, noch zum Audruck gebracht.
Ich weiß, selber dank meiner Ausbildung , das man ab und an die einfachsten Fehler nicht sieht.

Nochmal, du gehst ja mehr als einen Ordner durch?! Richtig ?
Sagen wir dein Musik Verzeichnis angenommen sieht so aus:

Code:
├───New Folder 
├───tumbnail.db 
└───New Folder (3)

Dann zeigt er dir, Für Ordner New Folder die Richtige Anzahl der Mp3s an.
Aber sobald du aber auf eine Datei wie zumbeispiel: tumbnail.db triffst.
Wirft er dir eine Exception. Das war damit gemeint.
 
nope, die .mp3-endung wird in der changename-klasse abgefragt 😉
und so werden die dateien einfach übersehen.
 
nope, die .mp3-endung wird in der changename-klasse abgefragt 😉
und so werden die dateien einfach übersehen.

Es ging um die Frage Ordner oder Datei.
Eine Datei, wie zumbeispiel tumbnail.db enthält keine anderen Datein, daher bekommst du bei einem dateien.list() ein Array das null ist.

So das musst ich mal klar stellen.
Gut das es jetzt läuft.
 
Wie auch immer^^

Man sollte aus Fehlern lernen^^
Auch wenn da keine Datei, war man sollte immer prüfen ob die,
Eingabe auch der Entspricht die man erwartet.

Also in diesem Sinne.
HF
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben