FileWriter innerhalb runnable Jar

moccajoghurt

Bekanntes Mitglied
Hi,
ich habe folgendes Problem:
Ich möchte bei einem Programm gewisse Daten aus einer Datei innerhalb einer runnable Jar Datei lesen.

Folgenden Code nutze ich, der innerhalb von Eclipse funktioniert:

Java:
		load = this.getClass().getClassLoader();
		BufferedReader buffer = new BufferedReader(new FileReader(load
				.getResource("init.ini").getPath().replace("%20", " ")));
		while ((read = buffer.readLine()) != null) {
			System.out.println(read);
		}

Die runnable Jar Datei jedoch lässt sich dadurch nicht mehr ausführen. Woran liegt das, wie kann ich das fixen?

Gruß mocca
 
Zuletzt bearbeitet:

XHelp

Top Contributor
Was genau meinst du mit "nicht ausführen"? Vermutlich fliegt eine Exception, die du nicht siehst, da du es nicht aus der Konsole startest.
Zum Thema: du kannst direkt mit getResourceAsStream arbeiten.
 

Network

Top Contributor
Mit der getResourceAsStream Funktion klappt es. Ich frag mich nur wieso... Wo liegt der Unterschied zu der vorigen Methode?

Weil dein vorheriger Code, wie XHelp bereits sagte, aus irgendeinem Grund, wahrscheinlich eine Exception verursacht hatte.

Wenn du genau herausfinden willst woran es lag:
1. Nochmal zurück zum Ausgangscode
2. Compilen
3. Jaren
4. Textfile im selben verzeichnis anlegen
5. Folgendes in die Textfile schreiben:
@echo off
java -jar [Name].jar
pause
6. speichern und die Datei dann umbenennen zu "StartIt.bat"
7. Die Datei ausführen.
 

musiKk

Top Contributor
Du kannst auf Dateien innerhalb eines JARs nicht mit der File API zugreifen. Sie ist nur für Dateien in einem Dateisystem gedacht.
 

moccajoghurt

Bekanntes Mitglied
Ok verstehe. Danke soweit.

Jetzt hab ich aber direkt das nächste Problem:

Wie kann ich jetzt die ini-Datei innerhalb der runnable Jar verändern? Habe es über den OutputStreamWriter nicht hinbekommen... oder muss ich es damit weiterprobieren?
 

moccajoghurt

Bekanntes Mitglied
Ach mist... das bedeutet, dass die ich zum Speichern von Daten immer eine Datei brauche, die außerhalb der Jar liegt? Dann bleibt mir wohl nichts anderes übrig, als die Jar zusammen mit einem Ordner zu liefern.
 

XHelp

Top Contributor
Naja, Einstellungen etc gehören ja auch nicht in die Jar. Diese mitauszuliefern brauchst du nicht mal. Du kannst beim Start überprüfen, ob eine Datei da ist, wenn nicht, dann eine Default-Konfiguration da reinspeichern.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D FileWriter / FileReader Problem Java Basics - Anfänger-Themen 10
A Datei Ein und Ausgabe FileWriter und printWriter Java Basics - Anfänger-Themen 5
O Ausgabe als .txt Datei speichern mit FileWriter Java Basics - Anfänger-Themen 2
B FileWriter nicht sichtbar? Java Basics - Anfänger-Themen 4
D Methoden Filewriter macht keine Zeilenumbrüche Java Basics - Anfänger-Themen 3
D FileWriter schreibt nicht in Datei Java Basics - Anfänger-Themen 14
Z FileWriter erzeugt Symbole Java Basics - Anfänger-Themen 8
C FileWriter bzw. Reader fehlerhaft Java Basics - Anfänger-Themen 6
C FileWriter Problem. Java Basics - Anfänger-Themen 2
M FileWriter Neue Datei wenn aktuelle "zu groß" Java Basics - Anfänger-Themen 3
D Nur aus Interesse: Warum verwendet man FileWriter.flush()? Java Basics - Anfänger-Themen 4
B FileWriter und JFileChooser zusammenfügen Java Basics - Anfänger-Themen 3
B FileWriter close() muss? Java Basics - Anfänger-Themen 8
Java-Insel Methoden FileWriter Methoden funktionieren nicht Java Basics - Anfänger-Themen 20
D Erste Schritte Warum try-catch für FileWriter Java Basics - Anfänger-Themen 5
G Effizienzsteigerung von FileWriter als Logging Java Basics - Anfänger-Themen 4
L FileReader und Filewriter Java Basics - Anfänger-Themen 4
O Datentypen double in string über fileWriter... Java Basics - Anfänger-Themen 7
O OOP fileWriter Dateiname übergeben Java Basics - Anfänger-Themen 12
R Klassen FileWriter und CharSet Java Basics - Anfänger-Themen 4
Luk10 FileWriter Java Basics - Anfänger-Themen 6
W Problem mit FileWriter / ActionListener Java Basics - Anfänger-Themen 6
O Integer in File mit Filewriter schreiben - geht nicht richtig Java Basics - Anfänger-Themen 4
M Probleme mit FileWriter Java Basics - Anfänger-Themen 7
Burny91 FileReader / FileWriter / BufferedWriter An einer bestimmten Zeile String ersetzten Java Basics - Anfänger-Themen 2
C FileWriter mit einer Variable Java Basics - Anfänger-Themen 8
S FileWriter - in neue Zeile schreiben!? Java Basics - Anfänger-Themen 19
K FileWriter Speicherort Java Basics - Anfänger-Themen 7
T OOP Speichern mit BufferedWriter(FileWriter(File)) Java Basics - Anfänger-Themen 2
S FileWriter Java Basics - Anfänger-Themen 3
S Filewriter schreibt einfach nicht Java Basics - Anfänger-Themen 6
G FileWriter -> neue Zeile Java Basics - Anfänger-Themen 13
F Seltsame Zeichen und kein Zeichenumbruch mit Filewriter Java Basics - Anfänger-Themen 4
G FileWriter Java Basics - Anfänger-Themen 3
G FileWriter Java Basics - Anfänger-Themen 6
T FileWriter Java Basics - Anfänger-Themen 5
M FileWriter Java Basics - Anfänger-Themen 18
J Problem mit FileWriter Java Basics - Anfänger-Themen 24
N Schneller als FileWriter? Java Basics - Anfänger-Themen 28
B Problem mit Filereader und filewriter Java Basics - Anfänger-Themen 20
M FileWriter-Problem Java Basics - Anfänger-Themen 2
P FileWriter schreiben? Java Basics - Anfänger-Themen 4
L Streamklassen, Filewriter und StringBuffer Java Basics - Anfänger-Themen 2
D FileWriter write? Zeilenumbruch ? Java Basics - Anfänger-Themen 4
G Prüfen mit FileWriter Java Basics - Anfänger-Themen 6
N Problem mit FileWriter Java Basics - Anfänger-Themen 2
S FileWriter-Variable nicht initialisiert Java Basics - Anfänger-Themen 3
R FileWriter: Dort wieder anfangen, wo er aufgehört hat Java Basics - Anfänger-Themen 4
S FileWriter funzt nicht :( Java Basics - Anfänger-Themen 5
I Viereck / Rechteck Prüfung innerhalb einem bestimmten Bereich Java Basics - Anfänger-Themen 2
I Innerhalb einem Bild ein Teil austauschen Java Basics - Anfänger-Themen 26
F wie kann ich die Position des letzten Vokals innerhalb einer Zeichenkette ermitteln? Java Basics - Anfänger-Themen 5
J int innerhalb einer Datei ändern Java Basics - Anfänger-Themen 1
J if-Schleife innerhalb einer if-Schleife wird in der Konsole nicht gelesen Java Basics - Anfänger-Themen 4
I Variable innerhalb Methode: Local variable test defined in an enclosing scope must be final or effectively final Java Basics - Anfänger-Themen 3
J Verschieben von Buchstaben in einem String um vorgegebene Anzahl von Zeichen innerhalb eines weiteren String Java Basics - Anfänger-Themen 12
I ArrayList erstellen innerhalb einer Zeile? Java Basics - Anfänger-Themen 3
Z Erste Schritte Indexe innerhalb eines Arrays zusammensählen Java Basics - Anfänger-Themen 14
B Summe von Property innerhalb einer Liste via Lambda Java Basics - Anfänger-Themen 1
M Auf einen Array innerhalb eines Objekts zugreifen Java Basics - Anfänger-Themen 5
B Enum innerhalb einer Klasse / anderes Konzept Java Basics - Anfänger-Themen 8
dapzoo Innerhalb eines Jahres intensivem Java-Selbststudium zur Anstellung? Java Basics - Anfänger-Themen 37
S Wert innerhalb eines anderen Wertes Java Basics - Anfänger-Themen 3
T split innerhalb Klammern ignorieren? Java Basics - Anfänger-Themen 6
x-tshainge Innerhalb von Textdatei addieren Java Basics - Anfänger-Themen 9
I Try-Catch innerhalb eines Catchblocks Java Basics - Anfänger-Themen 1
J Innerhalb von Zeichenketten tauschen Java Basics - Anfänger-Themen 1
S BufferedWriter innerhalb einer Methode Java Basics - Anfänger-Themen 2
H Innerhalb einer Methode eine Variable der aufrufenden Methode ändern? Java Basics - Anfänger-Themen 2
H For-Schleife innerhalb If-Abfrage? Java Basics - Anfänger-Themen 3
A Werte innerhalb von resultset vergleichen Java Basics - Anfänger-Themen 2
B Key auslesen/ausgeben innerhalb von foreach() Java Basics - Anfänger-Themen 5
MiMa abbruch innerhalb einer Rekursiven Schleife Java Basics - Anfänger-Themen 5
J Array innerhalb einer Funktion mehrfach iniatilisieren Java Basics - Anfänger-Themen 4
O Vererbung this innerhalb von super Java Basics - Anfänger-Themen 7
Silvascus Erste Schritte Werte innerhalb eines Arrays addieren Java Basics - Anfänger-Themen 3
L Punkt innerhalb eines Bereiches verschieben Java Basics - Anfänger-Themen 9
J Innerhalb Interfacemethode: Interface als Attribut Java Basics - Anfänger-Themen 2
I Innerhalb einer Methode suchen und hinzufügen. Neues Objekt in Suche dann? Java Basics - Anfänger-Themen 8
S Classpath: Alle .jars innerhalb eines Ordners einbinden Java Basics - Anfänger-Themen 4
M Farben/Color Abfragen von Farben innerhalb einer Methode Java Basics - Anfänger-Themen 9
T Erste Schritte run innerhalb eines package Java Basics - Anfänger-Themen 1
I Rückgabe und Aufruf einer Methode innerhalb einer anderen Methode Java Basics - Anfänger-Themen 5
B Variablen global abspeicher innerhalb von Methoden Java Basics - Anfänger-Themen 7
D Methoden Implementieren von einer Zoomfunktion innerhalb eines JPanels mit null-Layoutmanager Java Basics - Anfänger-Themen 1
M Throws Anweisung innerhalb eines Methodenkopfes unklar Java Basics - Anfänger-Themen 4
M Variablen Zugriff von außerhalb eines Blockes auf eine Variable innerhalb eines Blockes Java Basics - Anfänger-Themen 2
M Text innerhalb Anführungsstriche als "eins" auswerten Java Basics - Anfänger-Themen 5
O Files eines Directories innerhalb eines JAR-Files auflisten Java Basics - Anfänger-Themen 0
S Funktionen/Atrribute nur innerhalb einer package Zugänglich machen Java Basics - Anfänger-Themen 8
I JTextfield[] innerhalb eines Itemlistener aufrufen Java Basics - Anfänger-Themen 2
B Zufallsdatum innerhalb eines bestimmten Bereiches erzeugen Java Basics - Anfänger-Themen 3
D OOP Identifzierung eines Objektes innerhalb eines Array Java Basics - Anfänger-Themen 3
G Bewegung innerhalb eines Koordinatensystems berechnen Java Basics - Anfänger-Themen 9
P Kapselung Variable innerhalb einer inneren Klasse ansprechen ohne ein Objekt erzeugen zu müssen? Java Basics - Anfänger-Themen 6
L Next()-Aufruf zweimal innerhalb einer While-Schleife bei ListIterator Java Basics - Anfänger-Themen 10
W Methodenaufruf innerhalb einer Klasse - static vs. this Java Basics - Anfänger-Themen 3
B for-schleife innerhalb neuer Methode Java Basics - Anfänger-Themen 5
N Innerhalb des Programmes RAM einstellen Java Basics - Anfänger-Themen 2
J Variablen überschreiben innerhalb einer Klasse Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben