Gibt es bei einer Klassenpfad-Ressource eine Möglichkeit, das java.io.File-Objekt abzurufen, das es enthält / enthält?

8

Wenn ich eine Ressource in einem Klassenpfad habe, kann ich sie als Stream laden, und es gibt sogar eine URL-Darstellung davon. Leider implementieren einige Implementierungen der URL lastModified nicht korrekt.

Was ich möchte, ist, einen Pfad zu etwas im Klassenpfad zu nehmen und es dann in eine Datei auf der Festplatte aufzulösen - wenn es in einem Jar ist, dann ist eine Datei, die auf das Jar zeigt, in Ordnung. Ich kann dann das lastModified aus dem File-Objekt anstelle der URL abrufen, was hilfreicher sein wird.

    
Michael Neale 12.10.2009, 00:00
quelle

2 Antworten

12

Grob gesagt:

%Vor%

Sollte tun, was Sie wollen. Sie müssen IOException abfangen.

    
Dean Povey 12.10.2009, 00:39
quelle
-1

Nein. Dies kann nicht allgemein durchgeführt werden, da URL Ressourcen darstellen kann, die keiner Datei zugeordnet sind. Zum Beispiel kann es HTTP, FTP oder JNDI usw. sein.

Sie können nach dem Protokoll suchen und die Datei selbst erstellen, wenn das Protokoll dateibasiert ist, wie "file: // pfad", "jar: // pfad! ...".

    
ZZ Coder 12.10.2009 00:28
quelle

Tags und Links