Mam funkcję:Java - specjalne adresy URL znaków
public static ImageIcon GetIconImageFromResource(String path){
URL url = ARMMain.class.getResource(path);
return new ImageIcon(url);
}
Działa świetnie, ale jeśli umieścić mój plik .JAR na przykład C: \ Ares !!! \ myfile.jar zawiedzie i nie widzę moich ikon. Zauważyłem, że mój adres URL to plik:/C:/Ares !!!/myfile.jar! /com/test/images/img.png. Więc po rozszerzeniu JAR jest ! symbol! Myślę, że to jest główny powód! Co mogę zrobić, aby uniknąć tego problemu? Dzięki.
Powinieneś używać względnych ścieżek zamiast statycznych bezwzględnych ścieżek. –
Jeśli nie jest ci trudno, możesz mi wyjaśnić, jak? Mam standardową funkcję ** ARMMain.class.getResource (path) **, która zwraca adres URL. – Nolesh
Zamiast używać 'C:/XYZ/...' użyj względnej ścieżki jako 'images/img.png'. –