Eclipse Eingabeparamter

yampi

Mitglied
Ich stehe nun vor dem Problem, das ich nicht lösen kann, und habe versucht, was in der Run-Configuration (im Eclipse) einzustellen. Das ist erfolglos gekommen. Daher würde ich mich freuen, wenn einer von euch hier helfen kann.

DateienEinlesen.java
Java:
public class DateienEinlesen extends Object {
	
	// Konstanten für Datei-Typen
	private static final int NOTYPE = 0;
	private static final int DIRECTORY = 1;
	private static final int FILE = 2;
	
	// Dateien ausgeben (in der Konsole)
	public static void main(String argv[]) {
		// Überprüfung der Parameter
		if(argv.length < 1) {
			System.out.println("Verzeichnisliste fehlt!");
		} else {
			DateienEinlesen de = new DateienEinlesen();
			for(int i=0; (i < argv.length); i++) {
				de.baumAusgeben(argv[i], 0);
			}
		}
	}
	
	// Ausgabe zur angegebenen Datei
	private void dateienAusgeben(String dateiname, int ebene) {
		String ausgabezeile = "";
		int type = NOTYPE;
		File f = new File(dateiname);
		
		// Einrücken entsprechend der Verschachtelungstiefe im Verzeichnis
		for(int i=0; (i < ebene); i++) {
			ausgabezeile = ausgabezeile + " ";
		}
		
		if(f.exists()) {
			if(f.isDirectory()) {
                                // Falls es ein Verzeichnis ist und existiert
				type = DIRECTORY;
				ausgabezeile = ausgabezeile + "Verzeichnis: ";
			} else {
                                // Falls es eine Datei ist und existiert
				type = FILE;
				ausgabezeile = ausgabezeile + "Datei: ";
			}
			ausgabezeile = ausgabezeile + f.getName();
			// Ausgabe des aktuellen Knotens
			System.out.println(ausgabezeile);
			
			//rekursiver Aufruf für Verzeichnisse
			if(type == DIRECTORY) {
				String verzeichnisInhalt[] = null;
				verzeichnisInhalt = f.list();
				if(verzeichnisInhalt != null) {
					for(int j=0; (j < verzeichnisInhalt.length); j++) {
						//baumAusgeben(verzeichnisInhalt[j], ebene+1);
						baumAusgeben(f.getPath() + File.separator + verzeichnisInhalt[j], ebene+1);
					}
				}
			}
		} else {
			System.out.println("FEHLER: es gibt keine Datei"
					+" / kein Verzeichnis mit dem Namen "+dateiname);
		}
	}

}

Struktur der Dateien / Verzeichnis:
DateienEinlesen.java
+- Mediendateien
+- Sound.wav
+- Bild.jpg
+- Ton.mid

Für ausführliche Antworten wäre ich euch dankbar! :)

Zur Zeit programmiere ich dies während meiner Vorbereitung für die Prüfung.
 

Sempah

Bekanntes Mitglied
und die Frage lautet wie?

btw:

- von Object brauchst du nicht explizit abzuleiten
- in der Regel heissen die Argumente args nicht argv (wie in C++)
- baumAusgeben(String, int) ist wo definiert?

// EDIT:

- okay baumAusgeben einfach durch dateienAusgeben ersetzen
- in Eclipse kannst du unter Run Configurations im Reiter Arguments bei Programm Arguments ein Verzeichnisname eintragen, z.B. C:\Temp
 
Zuletzt bearbeitet:

yampi

Mitglied
Sempah,
das geht um Baumstruktur, das gezeigt wird.

Ups, die Methode werde ich gleich ersetzen. :oops:

n Eclipse kannst du unter Run Configurations im Reiter Arguments bei Programm Arguments ein Verzeichnisname eintragen, z.B. C:\Temp
Das habe ich versucht. Wenn eine Datei namens DateienEinlesen.java sich im Verzeichnis "Test" befindet und drei Dateien, wie ich oben geschrieben habe, im Verzeichnis Mediendateien, das unter dem Verzeichnis "Test" steht, sind, soll es sein:

Mediendateien/Sound.wav
Mediendateien/Bild.jpg
Mediendateien/Ton.mid

Das habe ich probiert. Eine Meldung kommt immer wieder, nach dem ich eine Datei DateienEinlesen.java gestartet habe:
Code:
FEHLER: es gibt keine Datei / kein Verzeichnis mit dem Namen Mediendateien/Ton.mid
FEHLER: es gibt keine Datei / kein Verzeichnis mit dem Namen Mediendateien/Bild.jpg
FEHLER: es gibt keine Datei / kein Verzeichnis mit dem Namen Mediendateien/Sound.wav
 

Neue Themen


Oben