1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Datei in jar-File lesen

  • Erdös-Index 97
  • 24. März 2006 um 10:08
  • Unerledigt
  • Erdös-Index 97
    3
    Erdös-Index 97
    Mitglied
    Punkte
    55
    Beiträge
    8
    • 24. März 2006 um 10:08
    • #1

    Hallo Leute,

    Ich habe ein Problem damit, eine Datei zu lesen, die sich gemeinsam mit dem .class file in einem jar-Archiv befindet. Das Programm liest an einer Stelle einfach die erste Zeile der Datei "key.txt" ein:

    Code
    public static String readKey() throws IOException {
            File f = new File("key.txt");
            BufferedReader fr = new BufferedReader(new FileReader(f));
            return fr.readLine();
        }


    Wenn ich nun sowohl die .class Datei als auch key.txt in ein jar-File packe, liest das Programm nicht die key.txt im Archiv, sondern sucht im Ordner, in dem sich das Archiv befindet, nach key.txt. Wird diese nicht gefunden, bekomme ich eine (klarerweise) eine IOException, obwohl die benötigte Datei an sich im jar-Archiv enthalten ist.

    Kann mir jemand erklären, wie ich dem Programm klar mache, dass es auch das Archiv nach key.txt durchsuchen soll? :) (evtl. eine bestimmte Zeile im Manifest?) Aus den guides auf java.sun.com/docs bin ich irgendwie nicht schlau geworden.

    mfg Erdös

    Sicher is des ane: A Apfel is ka Banane

  • Paulchen
    1
    Paulchen
    Gast
    • 24. März 2006 um 10:33
    • #2

    aus meiner abgabe für das 5. beispiel in security (machst du das auch, oder? :winking_face: ):

    Code
    InputStream stream=Main.class.getResourceAsStream("/key.txt");
    if(stream!=null) {
    	InputStreamReader reader=new InputStreamReader(stream);
    	try {
    		/* lesen */
    	}
    	catch(IOException ioe) {
    		/* was auch immer */
    	}
    }
    else {
    	/* was auch immer */
    }
    Alles anzeigen
  • Erdös-Index 97
    3
    Erdös-Index 97
    Mitglied
    Punkte
    55
    Beiträge
    8
    • 24. März 2006 um 12:54
    • #3

    danke für die antwort ersteinmal

    Zitat von Paulchen

    aus meiner abgabe für das 5. beispiel in security (machst du das auch, oder? :winking_face: )

    Erraten :).

    Zitat von Paulchen
    Code
    InputStream stream=Main.class.getResourceAsStream("/key.txt");

    Kannst du mir erklären wie du zu der Zeile kommst? Bei mir kann der Compiler nichts mit "Main" anfangen - "Main can not be resolved to a type" :confused:

    danke

    Sicher is des ane: A Apfel is ka Banane

  • Paulchen
    1
    Paulchen
    Gast
    • 24. März 2006 um 13:19
    • #4
    Zitat von Erdös-Index 97

    Kannst du mir erklären wie du zu der Zeile kommst? Bei mir kann der Compiler nichts mit "Main" anfangen - "Main can not be resolved to a type" :confused:

    nimm statt Main einfach irgendeine klasse in deiner jar-datei. ich hab Main genommen, weil in der klasse Main die methode main steht, und key.txt aus dieser klasse heraus ausgelesen wird.

  • Erdös-Index 97
    3
    Erdös-Index 97
    Mitglied
    Punkte
    55
    Beiträge
    8
    • 24. März 2006 um 13:37
    • #5

    Ah jetzt funktionierts! herzlichen dank :thumb:

    Sicher is des ane: A Apfel is ka Banane

  • Maximilian Rupp 27. Dezember 2024 um 12:06

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Benutzer online in diesem Thema

  • 1 Besucher

Rechtliches

Impressum

Datenschutzerklärung