Nach txt-Dateien fragen

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo zusammen,

leider komme ich nicht mehr weiter :?


Meine Frage ist: Wie kann ich nach einer Datei mit txt-Endung in einer Reihung von Ordnern fragen?
Z.B. c:\\Car\\BMW\\Belueftung\\Luftfilter.txt

Ich hab schon ein Prog. geschrieben, das txt-Dateien anlegen kann.
Jetzt wird mein Prog. gestartet und ich lege einen neue txt-Datei an.

Mein anderes Prog., welches auch fast fertig ist soll jetzt prüfen, ob eine
neue txt-Datei unter dem Pfad, wie oben beschrieben dazu gekommen ist.

Ich habe es schon mit CanonicalPath() versucht aber ich bekomme ja leider
nicht den gesamten Pfad.

Vielleicht hilft euch ja meine selbst formulierte Problemstellung weiter...
"Zeige mir alle txt-Dateien, die sich in dem Pfad c:\\Car\\BMW\\Belueftung\\...txt befinden"

Danke, chris
 

Morgyr

Aktives Mitglied
Erstell dir ein File-Objekt mit dem Pfad zum Ordner, in dem die .txt liegen sollen und dann rufst du für das Objekt die Methode list() auf. Dadurch erhälst du einen String-Array. Mit einer for-Schleife untersuchst du nun, ob irgendein String am Ende ".txt" hat.
 
G

Guest

Gast
Hi,

ich habe mir schon etwas gebastelt:

Code:
private class VersuchsKlasse// Klasse kann wieder gelöscht werden.
			{
				public void methode(JRadioButton r, JComboBox b)
				{
					String string_17 = r.getText();
					String string_18 = (String)b.getSelectedItem();
						
			File file = new File("c:/Auto/" + string_17 + "/" + string_18 + "//Definition Risikoanalyse.txt");
						try
						{
						FileReader fr = new FileReader(file);
						BufferedReader br = new BufferedReader(fr);
							String string_20= "";
								while((string_20 = br.readLine()) != null)
								{
									
								
						
//						String string_19 = file.getCanonicalPath();
						ta.append(string_20);
								}
//						ta.setText();
						}
						catch(IOException i)
						{
							JOptionPane.showMessageDialog(null, "Kein Dat. da");
						}
				}
			}

Es sieht wie folgt aus. Es wird ein RadioButton und ein Item aus der ComboBox gewählt. Auf
Grund dieser Auswahl sollen nun alle darin enthaltenen txt-Dateien angezeigt werde.

Und das geht mit list()??

Danke, chris
 
G

Guest

Gast
Hi,

bin darauf gekommen. Es werden alle txt-Dateien angzeigt, die sich in dem Ordner befinden, den ich
mir aussuche :D

Code:
private class VersuchsKlasse// Klasse kann wieder gelöscht werden.
			{
				public void methode(JRadioButton r, JComboBox b)
				{
					String string_17 = r.getText();
					String string_18 = (String)b.getSelectedItem();
						
						File file = new File("c:/Auto/" + string_17 + "/" + string_18);
//						try
//						{
//						FileReader fr = new FileReader(file);
//						BufferedReader br = new BufferedReader(fr);
							String[] string_20 = file.list();
								
								for(int i = 0; i < string_20.length; i++)
								{
									ta.append("" + string_20[i] + "\n");
								}
						}
//						catch(IOException i)
//						{
//							JOptionPane.showMessageDialog(null, "Kein Dat. da");
//						}
//				}
			}

Das war aber bestimmt nicht meine letzte Frage :wink:

Danke für den Tipp Morgyr

Gruß, chris
 

Morgyr

Aktives Mitglied
list() gibt dir alle Dateien zurück, die in dem Ordner sind. Den Pfad zum Ordner benutzt du dann zum instanzieren des File-Objektes, auf das du list() aufrufst.
Du musst dann nur noch untersuchen, ob im String-Array eine Textdatei ist.

Hier kannst du alle Methoden sehen, da es so gibt. Meiner Meinung nach, ist es das wichtigste "Tool" zum Entwickeln in Java.
Klick mich
 
G

Guest

Gast
Die API ist mir gekannt aber da ich noch nicht so lange dabei bin, weiss ich manchmal nicht
wonach ich suchen muss :bahnhof: und mein Englisch ist auch nicht der brüller...

danke nochmal

Gruß chris
 

Morgyr

Aktives Mitglied
Einfach immer nach dem suchen was Sinn ergibt. Oder wenn du nicht weißt, was irgendein Methoden-Name auf Deutsch bedeutet, einfach die Beschreibung lesen.
Mein Englisch ist auch mehr als grottenschlecht, aber inzwischen finde ich mich auch recht gut zurecht.

Wenn du deine Funktion jetzt noch daran hindern möchtest auch andere Dateien anzuzeigen, die keine Textdateien sind, such doch mal in der API bei der Klasse String nach einer sinnvollen Methode. Dann bekommst ein bisschen Übung beim Methoden-Suchen, auch wenn ich denke, dass der Name recht eindeutig ist.
 
G

Guest

Gast
Ein kleine Ergänzung...naja, eher ein kleines Prob. :oops:

Code:
File file = new File("c:\\Auto\\Vw\\Motor\\");

String[] string_20 = file.list();
							if(string_20 == null)
							{								
								JOptionPane.showMessageDialog(null, "Datein nicht vorhanden txt");
							}
							if(string_20 != null){	
								
								for(int i = 0; i < string_20.length; i++)
								{
									ta.append("m" + string_20[i] + "\n");
								}
						}

Es wird bei mir nie

Code:
JOptionPane.showMessageDialog(null, "Datein nicht vorhanden txt");

angezeigt, obwohl sich keine txt-Datei in dem letzten Ordner befindet!?!

In der Api steht, dass eigentlich,wenn keine Datei vorliegt null die Rückgabe ist, hmm ???:L

Dann bekommst ein bisschen Übung beim Methoden-Suchen,
auch wenn ich denke, dass der Name recht eindeutig ist.

hast recht :)

Gruß, chris
 

mahe

Aktives Mitglied
Probiers so:
Code:
File file = new File("c:\\Auto\\Vw\\Motor\\");

String[] string_20 = file.list();
							if(string_20 == null || string_20.length == 0)
							{								
								JOptionPane.showMessageDialog(null, "Datein nicht vorhanden txt");
							} else {	
								
								for(int i = 0; i < string_20.length; i++)
								{
									ta.append("m" + string_20[i] + "\n");
								}
						}

So kommt die Meldung bei nicht vorhandenem sowie bei leerem Array (und das ist ein Unterschied!).

Folgendes steht übrigens in der Dokumentation:
The array will be empty if the directory is empty.
-> Leerer Ordner, leeres Array.
 

Morgyr

Aktives Mitglied
Nein. Da musst du genauer lesen. Dort steht, dass, wenn der Ordner nicht exisitert, null zurückgegeben wird. Du möchtest überprüfen, ob der Ordner leer ist. Wenn der Ordner leer ist, wird ein leerer Array zurückgeben. Aber "== null" ist der Array nicht. Das heißt, du müsstest die Länge des Arrays überprüfen.

Edit: zu langsam
 
G

Guest

Gast
Dank an euch beide :toll:

Hab mal folgendes versucht:
Code:
File file = new File("c:\\Car\\Vw\\Motor\\");//Car für Auto eingesetzt

							String[] string_20 = file.list();
							if(string_20 == null)//ohne --> if(string_20 == null || string_20.length == 0) 
							{								
								JOptionPane.showMessageDialog(null, "Datein nicht vorhanden txt");
							}
							else{	
								
								for(int i = 0; i < string_20.length; i++)
								{
									ta.append("" + string_20[i] + "\n");
								}
						}

stimmt, ihr hatte recht. JOptionPane wird angezeigt, weil die Datei nicht vorliegt.

Ich hattet gedacht, dass nur, wenn der Inhalt des letzten Ordners fehlt "null" die Rückgabe ist.
Jetzt weiss ich es besser... :D

Mit
Code:
if(string_20 == null || string_20.length == 0)

geht es auch, danke!!


Gruß chris
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Erste Schritte Nach bestimmten Dateien suchen und dann in die Registry schreiben. Java Basics - Anfänger-Themen 6
J Ordner und Unterordner nach Dateien durchsuchen Java Basics - Anfänger-Themen 7
Fu3L Programm findet nach .jar-Export Dateien nicht Java Basics - Anfänger-Themen 3
T Wo sucht Eclipse nach Dateien Java Basics - Anfänger-Themen 5
T Ordner nach Dateien durchsuchen Java Basics - Anfänger-Themen 2
M Dateien aus Verzeichnis filtern, aber nicht nach Endung Java Basics - Anfänger-Themen 59
J Zwischenablage ist nach Programm beenden leer Java Basics - Anfänger-Themen 9
hubmar Fehler beim mp4-datei aufrufen, nach dem zweiten aufruf Java Basics - Anfänger-Themen 1
M Variablen Werte nach setzen, bei Abfrage wieder alter Wert Java Basics - Anfänger-Themen 11
D Map<String, Integer> sortieren und der reinfolge nach die Glieder abfragen Java Basics - Anfänger-Themen 3
S nach Import von jars (PLC4x) in Eclipse kann nicht mehr compiliert werden Java Basics - Anfänger-Themen 9
S Java: Wie sortiere ich eine ArrayList benutzerdefinierter Objekte nach einem bestimmten Attribut? Java Basics - Anfänger-Themen 2
M Queue-Datenstruktur: nach dem Elementen entfernen, das Ergebnis ist immer noch nicht optimal. Java Basics - Anfänger-Themen 3
N Hey Leute und zwar versuche ich gerade ein 2D Spiel zu Programmieren aber die Figur will sich nicht nach links oder rechts bewegen :( Java Basics - Anfänger-Themen 12
H Liste nach String-Länge sortieren Java Basics - Anfänger-Themen 1
I Bild richtig speichern / Hochkant im File Explorer, nach Upload vertikal Java Basics - Anfänger-Themen 9
D Wie kann man in Java nach Arrays auf Duplikate prüfen Java Basics - Anfänger-Themen 12
C Probleme mit Byte konvertieren nach int Java Basics - Anfänger-Themen 10
T sortierung der eingabe nach größe Java Basics - Anfänger-Themen 5
G Bei dynamischer Arrayliste nach jeder Auswahl Zahl entfernen Java Basics - Anfänger-Themen 3
ptcho Werte/Position nach dem Funktionsaufruf tauschen? Java Basics - Anfänger-Themen 1
K Warum wird mir hier nach dem ersten Durchlauf zwei mal "welchen Datentyp wollen sie übergeben?" ausgegeben ? Java Basics - Anfänger-Themen 1
H Cast von Float nach String klappt nicht Java Basics - Anfänger-Themen 12
W LocalDate toString und nach Split falsch "erkannt"? Java Basics - Anfänger-Themen 8
B Array nach Elementwerten sortieren? Java Basics - Anfänger-Themen 1
S Größte Zahl nach Eingabe der Zahl 0 ausgeben Java Basics - Anfänger-Themen 6
I Java Mail Timeout erst nach rund 5 Minuten? Java Basics - Anfänger-Themen 9
FireHorses Einen Command erst nach einer Chateingabe aktivieren Java Basics - Anfänger-Themen 1
izoards Sortier Algorithmus für Bounding Box Elememte Links nach Rechts und von Oben nach Unten Java Basics - Anfänger-Themen 33
Jambolo Karten sortieren nach Rang und Farbe Java Basics - Anfänger-Themen 5
Lion.King Subtraktion nach Eingabe im Terminal Java Basics - Anfänger-Themen 7
D Programmieren nach UML Java Basics - Anfänger-Themen 2
rosima26 Java nach letzter Ziffer sortieren Java Basics - Anfänger-Themen 19
H Kompliziertes Sortieren einer ArrayList mit Objekten(Sortieren nach X und Y) Java Basics - Anfänger-Themen 11
H Erste Schritte Nach einer Zahl n soll n Mal der String untereinander ausgegeben werden Java Basics - Anfänger-Themen 3
volcanos List & ArrayList nach Familiennamen abfragen Java Basics - Anfänger-Themen 57
sserio Wie kann man nach einer Klasse fragen? Java Basics - Anfänger-Themen 12
S Java Client-je nach Heap Size Größe startet Applikation oder nicht Java Basics - Anfänger-Themen 4
A String split funktioniert nicht, wenn mehr als 1 Ziffer vor dem Zeichen steht nach dem er trennen soll? Java Basics - Anfänger-Themen 4
F Suche nach betreuender Person für eine Jahresarbeit der 12. Klasse. Java Basics - Anfänger-Themen 6
F nach Methode Programm nicht beenden Java Basics - Anfänger-Themen 9
E Umlaute und Sonderzeichen werden nach der Build Project nicht richtig angezeigt Java Basics - Anfänger-Themen 2
M Bei nach oben scrollen soll Seite aktualisiert werden (Userscript mit Javascript) Java Basics - Anfänger-Themen 10
K log4j nach log4j2 überführen Java Basics - Anfänger-Themen 0
javapingu Jeglichen Inhalt einer Textdatei nach Zeile n löschen Java Basics - Anfänger-Themen 8
J Nach dem Exportieren funktioniert mein Programm nicht mehr Java Basics - Anfänger-Themen 8
P Datei einlesen, nach Begriff filtern und in Datei ausgeben. Problem Standardausgabe über Konsole Java Basics - Anfänger-Themen 19
B Array nach Wert prüfen rekursiv Java Basics - Anfänger-Themen 5
CptK For-Schleife in Thread nach jedem Durchlauf pausieren Java Basics - Anfänger-Themen 35
D Primzahlen Rechner nach Eratostenes von Kyrene Algorithmus Java Basics - Anfänger-Themen 2
rafi072001 Sortieren einer HashMap nach Values Java Basics - Anfänger-Themen 2
L Zahlungen nach Monat filtern Java Basics - Anfänger-Themen 2
J Jtable Eingabe nach Klick ausserhalb der Tabelle übernehmen Java Basics - Anfänger-Themen 6
I String nach Wort suchen Java Basics - Anfänger-Themen 6
C ArrayList sortieren nach bestimmten Buchstaben in den Wörtern Java Basics - Anfänger-Themen 13
javaluke Erste Schritte Array nach Datentyp sortieren Java Basics - Anfänger-Themen 16
D Methoden nach einer bestimmten Reihenfolge ausführen. Java Basics - Anfänger-Themen 20
idontknow707 Matrix nach z.B. Variable durchsuchen Java Basics - Anfänger-Themen 4
O 2D-Array nach einer Spalte sortieren Java Basics - Anfänger-Themen 22
I Liste gruppieren nach Monat? Java Basics - Anfänger-Themen 5
P Ein Objekt nach einem String durchsuchen? Java Basics - Anfänger-Themen 7
M Nach einer erstmaligen Eingabe, eine zweite Eingabe nur noch gegen bestätigung möglich Java Basics - Anfänger-Themen 2
D Input/Output fehlerhafter Algorithmus zum Ersetzen von Array-Werten nach logischem Schema Java Basics - Anfänger-Themen 1
C Meldung einer Klasse nach "oben" Java Basics - Anfänger-Themen 6
B Nach eingefügtem Code erkennt Compiler keine Instanzvar und meldet SyntaxError Java Basics - Anfänger-Themen 2
newcomerJava Nach doppelter Zahl eine Ausgabe Java Basics - Anfänger-Themen 10
M Anzahl Schleifendurchgänge nach x Sekunden anzeigen Java Basics - Anfänger-Themen 2
C Lotto 3, 4, 5, 6 Richtige nach x Ziehungen ermittelt.. Java Basics - Anfänger-Themen 7
G Primzahlen von Rekursiv nach Iterativ Java Basics - Anfänger-Themen 6
F JMenuItem Kann nicht nach einem String benannt werden... Java Basics - Anfänger-Themen 11
R JDK installieren Durcheinander nach installation von SE 14.02 Java Basics - Anfänger-Themen 6
P Sortieren von Listen nach Attributen Java Basics - Anfänger-Themen 3
B DateTimeFormatter nach LocalDateTime, wenn dd.MM.yyyy oder dd.MM.yyyy mm:hh Java Basics - Anfänger-Themen 5
1 main-Methode erweitern, Nachfrage nach wiedeholung Java Basics - Anfänger-Themen 2
G unklares Verhalten nach Instanzierung neuer Klasse Java Basics - Anfänger-Themen 3
S Wohin kommt das „abstract“? Vor oder nach „public“/ „private“ /... Java Basics - Anfänger-Themen 3
S Datenbank Befehl nach Login Java Basics - Anfänger-Themen 5
N Operatoren Schreibtischtest der Reihen-Suche nach Aufschluss in die Basics Java Basics - Anfänger-Themen 1
B Umstieg von C# nach Java Java Basics - Anfänger-Themen 18
Ellachen55 Wie nach häufigste Werte im Array suchen? Java Basics - Anfänger-Themen 2
M Untersuchen ob ein Graph nach entfernen einer Kante immer noch zusammenhängend ist Java Basics - Anfänger-Themen 70
N Wörter und Zahlen nach speziellen Wörtern ausgeben Java Basics - Anfänger-Themen 11
M Werte ändern sich nicht mehr nach Reset Java Basics - Anfänger-Themen 14
B Nach dem kompilieren werden Bilder nicht mehr gefunden Java Basics - Anfänger-Themen 10
X Nach einem Bruch testen ob es eine ganze Zahl ist Java Basics - Anfänger-Themen 6
B String nach erstem Leerzeichen trennen Java Basics - Anfänger-Themen 7
N Speichern von Werten in Variablen nach Schließen des Programms Java Basics - Anfänger-Themen 3
G String wird nach Einlesen aus Datei nicht erkannt Java Basics - Anfänger-Themen 3
CptK Best Practice Algorithmus nach jedem Schritt zum Visualisieren pausieren Java Basics - Anfänger-Themen 3
O zwei Arrays nach Werten durchsuchen und zusammenfügen Java Basics - Anfänger-Themen 3
M Double Wert nach n abschneiden ohne zu runden Java Basics - Anfänger-Themen 1
C Erste Schritte Bilder nach Export anzeigen Java Basics - Anfänger-Themen 0
F Input/Output Files von A nach B kopieren Java Basics - Anfänger-Themen 11
B InputStream (PDF) nach Image (PNG / JPG) konvertieren? Java Basics - Anfänger-Themen 2
O ADT Graph nach größe Abfragen Java Basics - Anfänger-Themen 42
O compareTo nach mehreren Kriterien Java Basics - Anfänger-Themen 13
R Benutzereingaben als Array abspeichern nach Programmstart Java Basics - Anfänger-Themen 5
S Pane nach speziellen Child Objekten durchsuchen Java Basics - Anfänger-Themen 3
V Neue Ausgabe von toString nach Methodenaufruf Java Basics - Anfänger-Themen 9
L Arrayliste von hinten nach vorne ausgeben Java Basics - Anfänger-Themen 10

Ähnliche Java Themen

Neue Themen


Oben