Problem beim lesen einer File in JAR-File

N

nicog

Mitglied
Hallo Java Programmierer.

Ich habe ein kleines Problem, wie im Titel schon zu lesen ist.

Ich habe eine JAR-File in der zusätzlich in einem Unterverzeichnis eine Excel-File und in einem anderen Unterverzeichnis ein paar Bilder liegen.

Möchte ich die Bilder lesen, klappt das ohne Probleme, egal auf welchem Rechner ich die JAR ausführe.
Über: [JAVA=42]private ImageIcon bild = new ImageIcon((Wahlomat.class).getClassLoader().getResource("Bilder/bild.gif"));[/code]
funktioniert das sehr gut.

Möchte ich aber auf die Excel-File zugreifen, funktioniert das nicht mehr.
Mit dem Java-Editor und das normalen Pfadangabe: [JAVA=42]private String Excelpfad = "D:/Excel-Files/";[/code]
geht der Zugriff ohne Probleme, unter der Voraussetzung, dass die Excelfile auch dort zu finden ist.
Möchte ich aber die Excel-File in der JAR-File integriert lesen, habe ich die Probleme.

Habe schon mehreres versucht aber nur folgendes schien mir logisch:
[JAVA=42]private String Excelpfad = (Wahlomat.class).getClassLoader().getResource("Excel-Files/").toString();[/code]
, wie auch bei den Bildern.

Aber das funktioniert nicht und gibt mir eine ioFileNotFoundException zurück.

Vielleicht kann mir einer von euch weiterhelfen. Ich würde mich sehr über Post freuen.

Vielen Dank
 
M

Michael...

Top Contributor
Habe schon mehreres versucht aber nur folgendes schien mir logisch:
[JAVA=42]private String Excelpfad = (Wahlomat.class).getClassLoader().getResource("Excel-Files/").toString();[/code]
, wie auch bei den Bildern.
Versuchst Du damit auf einen Verzeichnispfad zu zugreifen? Ein jar enthält Einträge, aber keine Verzeichnisse.

Dateien kann man als Stream aus einem jar auslesen:
Java:
getClass().getResourceAsStream("Excel-Files/datei.xls")
 
DerEisteeTrinker

DerEisteeTrinker

Bekanntes Mitglied
Über den ClassLoader kannst du die Datei als InputStream lesen. Das nutzt ja bei den Bildern. Vllt kannst du mit dem InputStream in eine temporäre Datei zwischenspeichern und da kannst du dann den Byte-Strom drin ablegen, wenn die API vllt mit reinen InputStream's ein Problem hat
 
N

nicog

Mitglied
Hallo Zusammen,

danke für die Antworten.

Kann ich in JAR-Files keine Verzeichnisse integrieren, oder heißen die dort einfach anders. Meine Bilder liegen ja eigentlich im Verzeichnis "Bilder" und der Pfad wird ja auch wie ein Verzeichnispfad angegeben.

Also, in der Excel-File stehen Daten, die ich in meinem Programm nutze. Ich fülle damit Dropdown Felder. Mehrere Arbeitsblätter sind beschrieben und abhängig von verschiedenen Bedingungen werden andere Arbeitsblätterinhalte in die Dropdownboxen geladen.

Wie gesagt, die einfachste Variante ist, die Excel-Datei irgendwo auf dem Rechner abzulegen und den Pfad im Programm auf diesem Ort zu legen. Nur ist das immer umständlich, da die JAR File ja eine gewisse Portabilität gewährleisten sollte. Und wenn ich immer dran denken muss, die Excel File auf dem Rechner zu speichern, dann ist das nicht allzu gut. Zumal die Pfade ja eingestellt sind und ich nicht jedes mal das Projekt umschreiben und neu kompilieren möchte.

Würde die Methode von "DerEisteeTrinker" irgendwie funktionieren?

Ich würde mich sehr über eine Antwort freuen,
nicog
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
karambara Sonderzeichen-Problem beim Lesen und Speichern von Dateien Allgemeine Java-Themen 6
M Codepage Problem (Vertauscht Zeichen beim Lesen aus Datei) Allgemeine Java-Themen 3
J Problem beim Umstellen auf Java jdk 13 Allgemeine Java-Themen 3
A Problem beim öffnen von Java-Installern Allgemeine Java-Themen 1
J Problem beim Generischen Klassen und Interfaces Allgemeine Java-Themen 2
G Problem beim GUI Allgemeine Java-Themen 9
A OOP Problem beim Berechnen der größten Fläche eines Ringes Allgemeine Java-Themen 19
F Problem beim Einlesen einer Textdatei Allgemeine Java-Themen 12
I Problem beim Aufrufen, von Objektmethoden/ -variablen Allgemeine Java-Themen 6
D Selenium WebDriver HtmlUnitDriver Problem beim Automatisieren Allgemeine Java-Themen 1
F Problem beim Speichern eines Attachments Allgemeine Java-Themen 3
M Problem beim Starten der Anwendung Allgemeine Java-Themen 3
O Problem beim Auslesen einer Arraylist von JComboBoxen Allgemeine Java-Themen 2
GUI-Programmer JNI - Problem beim Erstellen der .dll Allgemeine Java-Themen 9
D Problem mit Referenzen beim Serialisieren Allgemeine Java-Themen 3
R Problem beim vCard Manipulieren Allgemeine Java-Themen 2
Rudolf Problem beim Visitorpattern Allgemeine Java-Themen 2
J Problem beim Auslesen einer Datei vom Server Allgemeine Java-Themen 4
M Problem beim schreiben einer eigene generische Klasse Hashtable Allgemeine Java-Themen 11
U Mailclient über getDesktop.mail vorbereiten, Problem beim Anhang: Allgemeine Java-Themen 3
M Problem beim schreiben einer eigene generische Klasse LinkedList Allgemeine Java-Themen 34
N iText Problem beim verlinken anderer PDFs Allgemeine Java-Themen 2
M Problem beim Drucken von PDFs Allgemeine Java-Themen 3
H Problem beim Sortieren einer HashMap mit TreeSet Allgemeine Java-Themen 4
I Problem beim Ausführen von Shell Commandos Allgemeine Java-Themen 3
O Problem beim Ausgeben von Arrays Allgemeine Java-Themen 9
L Problem beim animieren von Bildern in Applet Allgemeine Java-Themen 23
C Problem beim einlesen bestimmter Seiten Allgemeine Java-Themen 5
Apo JNI-Problem beim erneuten Laden einer dll Allgemeine Java-Themen 28
S Problem beim Drucken auf Netzwerkdrucker unter Linux Allgemeine Java-Themen 9
S Problem beim Anlegen eines JDialogs! Allgemeine Java-Themen 4
A Problem mit ShutdownHook beim schließen Allgemeine Java-Themen 7
S Problem beim Löschen des Inhalts des Fensters Allgemeine Java-Themen 4
A Problem beim serialisieren/deserialisieren einer ArrayList Allgemeine Java-Themen 3
M Problem beim Umrechnen von Pixel in cm. Allgemeine Java-Themen 6
M Problem beim ausführen von Batchdateien Allgemeine Java-Themen 21
Escorter Problem beim starten von Batchfiles Allgemeine Java-Themen 4
A Problem beim Starten der H2-Datenbank Allgemeine Java-Themen 4
L WindowsTrayIcon in Java 1.4 - Problem beim ausführen der JAR Allgemeine Java-Themen 2
E Problem beim Anlegen einer Datei Allgemeine Java-Themen 4
E Problem beim Dateien kodieren ("Byte = Byte +1") Allgemeine Java-Themen 3
G Problem beim starten von eclipse product Allgemeine Java-Themen 2
M Problem beim Erstellen eines Objektes Allgemeine Java-Themen 3
M Problem beim laden von vielen Bildern Allgemeine Java-Themen 16
S Problem beim Einlesen von byte-werten aus datei Allgemeine Java-Themen 2
H Problem beim Malen auf ein Panel Allgemeine Java-Themen 2
G iText: Problem beim Drucken von AcroFormen Allgemeine Java-Themen 2
E Problem beim fertigen Programm die Hintergrundfarbe ändern Allgemeine Java-Themen 8
R Problem beim Datentransfer Allgemeine Java-Themen 19
C Problem beim Umstieg von Java1.4 auf 1.5 Allgemeine Java-Themen 5
K javax.comm Problem beim starten aus .jar heraus Allgemeine Java-Themen 3
S Problem beim Bearbeiten von Java-Dateien unter Linux Allgemeine Java-Themen 3
S Hab ein Problem! Bei Dame! Beim Umranden! Allgemeine Java-Themen 2
G Problem beim speichern von Dateien Allgemeine Java-Themen 8
M Problem mit PageFormat beim Drucken Allgemeine Java-Themen 2
Streeber Problem beim Kompilieren und Ausführen Allgemeine Java-Themen 20
E Problem beim Compilieren Allgemeine Java-Themen 6
O JNI Problem beim kompilieren Allgemeine Java-Themen 2
P Problem beim "spliten" eine Textdatei Allgemeine Java-Themen 3
F Problem beim Drucken mit javax.print Allgemeine Java-Themen 2
Z Problem beim Aufruf eines Listener? Allgemeine Java-Themen 4
bernd Problem beim kopieren! Allgemeine Java-Themen 2
B problem beim erstellen einer ausführbaren jar-datei Allgemeine Java-Themen 5
A Problem beim Aufruf von javac Allgemeine Java-Themen 7
J JFrame Problem beim schließen Allgemeine Java-Themen 2
S Problem beim Zugriff auf Internetseiten Allgemeine Java-Themen 4
R Problem beim speichern von eigenem objekt Allgemeine Java-Themen 6
G Welches Problem besteht bei den Typparametern? Allgemeine Java-Themen 5
temi Problem mit Aufrufreihenfolge bei Vererbung Allgemeine Java-Themen 3
Sumo_ow "ArrayIndexOutofBoundsException: 2" Array Problem Allgemeine Java-Themen 6
T PIM basierend auf netbeans via AnyDesk Problem Allgemeine Java-Themen 3
xGh0st2014 Problem mit Java Array Allgemeine Java-Themen 1
Kirby.exe Verständnis Problem bei Rucksack Problem Allgemeine Java-Themen 6
B Eclipse-Lombok-Problem Allgemeine Java-Themen 19
I Input/Output ObjectOutputStream - Problem Allgemeine Java-Themen 7
1 Multiple Choice Knapsack- Problem Allgemeine Java-Themen 2
kodela Problem mit strukturiertem Array Allgemeine Java-Themen 18
E Problem mit Gridlayout und Button Allgemeine Java-Themen 2
A Array Problem Allgemeine Java-Themen 8
bueseb84 Problem Allgemeine Java-Themen 0
S Problem mit Arrays Allgemeine Java-Themen 1
D Nullpointer Exception Problem Allgemeine Java-Themen 5
B Problem mit meinen Klassen Allgemeine Java-Themen 6
A HashMap Methode "get()"-Problem Allgemeine Java-Themen 28
J Problem bei Install java 13 Allgemeine Java-Themen 3
X Profitable Reise Problem Allgemeine Java-Themen 32
Dann07 Problem mit JavaMail API Allgemeine Java-Themen 26
L Klassen Algorithmus für das folgende Problem entwickeln? Allgemeine Java-Themen 30
J Clear-Problem Allgemeine Java-Themen 10
B Problem zu einem Java Projekt Allgemeine Java-Themen 6
S JFileChooser Problem Allgemeine Java-Themen 4
M Traveling Salesman - MST Heuristik Problem Allgemeine Java-Themen 4
J Traveling Salesman Problem Allgemeine Java-Themen 14
E Java Editor Problem mit 2er Exceptions Allgemeine Java-Themen 12
C code oder Bibliotheken für 2-Center Problem Allgemeine Java-Themen 4
M Salesman Problem - Bruteforce Algorithmus Allgemeine Java-Themen 23
S Methoden Problem mit NullPointerException Allgemeine Java-Themen 9
Javafan02 Problem mit if-clause Allgemeine Java-Themen 17
J Lombok Problem mit Konstruktoren bei Verberbung Allgemeine Java-Themen 1
kodela Event Handling Problem mit der Alt-Taste Allgemeine Java-Themen 16

Ähnliche Java Themen

Anzeige

Neue Themen


Oben