Laden von Dateien mit ClassLoader

Dieses Problem nervt mich schon eine Weile. Ich muss ein paar Dateien in meine Java-App laden und der einzige Weg, auf dem ich bisher gearbeitet habe, sieht so aus:

URL hsURL;
if(System.getProperty("os.name").toLowerCase().contains("windows")) {
    hsURL = new URL("file:/" + System.getProperty("user.dir") + "/helpsets/helpset.hs");
}
else {
    hsURL = new URL("file://" + System.getProperty("user.dir") + "/helpsets/helpset.hs");
}

Aber das ist hässlich und schrecklich. Für eine Weile dachte ich, ich hätte diese Arbeit:

hsURL = ClassLoader.getSystemResource("helpsets/helpset.hs");

Aber das funktioniert aus irgendeinem Grund nicht mehr (ich muss etwas geändert und nicht bemerkt haben. Es gibt null zurück.

Sollte ich getResource () anstelle von getSystemResource () verwenden (wenn ja, warum ist getSystemResource () statisch, aber nicht getResource ())?

Ich verwende Eclipse und habe versucht, den Ordner in den Erstellungspfad (Klassenpfad) aufzunehmen. Ohne ihn scheint es keinen Unterschied zu machen.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage