Announcement

Collapse
No announcement yet.

Datei in jar-File lesen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • [JAVA] Datei in jar-File lesen

    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

  • #2
    aus meiner abgabe für das 5. beispiel in security (machst du das auch, oder? ):
    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 */
    }
    staroch.name | huntu.at | jabber.rueckgr.at

    Comment


    • #3
      danke für die antwort ersteinmal
      Originally posted by Paulchen
      aus meiner abgabe für das 5. beispiel in security (machst du das auch, oder? )
      Erraten .

      Originally posted by 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"

      danke
      Sicher is des ane: A Apfel is ka Banane

      Comment


      • #4
        Originally posted by 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"
        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.
        staroch.name | huntu.at | jabber.rueckgr.at

        Comment


        • #5
          Ah jetzt funktionierts! herzlichen dank
          Sicher is des ane: A Apfel is ka Banane

          Comment

          Working...
          X