Textdateiname Problemchen

Alexius

Mitglied
Hallo zusammen,

ich habe ein kleines Problemchen und hoffe das ihr mir dabei helfen könnt.
Ich muss beim Aufruf meines Programms einen Result-File erstellen. Die Name des Files setzt sich aus den Benutzereingaben zusammen, welche ich aus JTextField's auslese. Das ganze habe ich früher wie folgt gemacht:
Java:
...
String fileName = datum + "_" + artNr + "_" +name;
resultFile = File.createTempFile(fileName, ".txt", new File("C:\\Hard Disk\\Resultfiles"));
...
Das Problem beim "createTempFile()" ist das es mir da zusätztlich zu "fileName" immer eine random genirierte Zahl drangeklebt wird und genau das will ich ja nicht. Die Datei soll/muss ein bestimmtes Format haben und zwar: datum_artNr_name.txt und soll/muss in Resultfiles gespeichert werden.
Kennt jemand vlt. eine andere Möglichkeit eine .txt-Datei zu erstellen wo man Dateiname und Path mitgeben kann.

Bin für jede Hilfe dankbar.
 

BRoll

Bekanntes Mitglied
Ich mache das immer so:

Java:
String inhalt="";
			try {
			FileWriter out = new FileWriter("C:/Temp/Test.txt",false);
			out.write(inhalt);
			out.close();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			
		}

Da kannste ja einfach deinen String einfügen, funzt bei mir 100%.
 

pl4gu33

Top Contributor
Java:
 File ff=new File("meinString.txt");
        try {
			ff.createNewFile();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
 

Alexius

Mitglied
Danke für die Tipps. Leider ist es nicht das nach was ich gesucht habe.
Die beide Vorschläge erstellen zwar eine Textdatei, aber die Name der Textdatei wird auch gleich mitgegeben:
FileWriter out = new FileWriter("C:/Temp/Test.txt",false);
oder eben
File ff=new File("meinString.txt");
und genau das wollte ich ja vermeiden. Wie ich schon geschrieben habe, setzt sich die Name der Textdatei aus Benutzereingaben zusammen. Das ganze hat folgendes Ablauf:
nach dem Start des Prog. muss der Benutzer zuerst 3 JTextFields ausfühlen (Name, Artikelnummer, Datum). Die Felder sind als Pflicht markiert so das man im Prog. nicht weiterkommt solange die Felder leer sind. Wurden die Fields ausgefühlt drückt der Benutzer auf Button "Save". Button "Save" hat nen ActionListener in dem ich mir die Daten aus Textfeldern auslese und Anhand diesen Daten einen Result-File erstelle und die Name des Files setzt sich eben aus diesen eingegebenen Daten zusammen. So eine Datei kann z.B. so aussehen: 17072012_A241_Musterman.txt
Und genau hier hab ich ja mein Problem. createTempFile() hängt eine random Zahl an und meine Datei sieht dann so aus: 17072010_A241_Musterman12345.txt
Hat jemand von euch noch einen Vorschlag für mich wie ich mein Problem lösen kann?
 

Flown

Administrator
Mitarbeiter
Ich weiß ja nicht was du jetzt genau willst ... weil was du als letztes gefragt hast steht bereits schon da:

Java:
String inhalt="";
            try {
            FileWriter out = new FileWriter("C:/Temp/Test.txt",false);
            out.write(inhalt);
            out.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            
        }

dann mach doch einfach das hier:

Java:
String fileName = datum + "_" + artNr + "_" +name;
String path = "C:/Temp/"
String inhalt="";
            try {
            FileWriter out = new FileWriter(path + fileName,false);
            out.write(inhalt);
            out.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            
        }

Dann hast du auch deine "eigene" File-Beschriftung


Und zu deineim createTemp ... das hat einen guten Grund zur Sicherheit das einfach Zahlen dahinter stehen. Damit verhindert man das File-Namen vorhersagbar sind.
 
Zuletzt bearbeitet:

Ähnliche Java Themen

Neue Themen


Oben