abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:33 | Zajímavý projekt

    Od 1. ledna 2026 jsou všechny publikace ACM (Association for Computing Machinery) a související materiály přístupné v její digitální knihovně. V rámci této změny je nyní digitální knihovna ACM nabízena ve dvou verzích: v základní verzi zdarma, která poskytuje otevřený přístup ke všem publikovaným výzkumům ACM, a v prémiové zpoplatněné verzi, která nabízí další služby a nástroje 'určené pro hlubší analýzu, objevování a organizační využití'.

    NUKE GAZA! 🎆 | Komentářů: 2
    včera 16:44 | IT novinky

    S koncem roku 2025 skončila standardní podpora operačního systému HP-UX (Hewlett Packard Unix).

    Ladislav Hagara | Komentářů: 5
    včera 14:33 | Nová verze

    K 1. lednu 2026 končí 70leté omezení majetkových autorských práv děl autorů zesnulých v roce 1955, viz 2026 in public domain. V americkém prostředí vstupují do public domain díla z roku 1930, viz Public Domain Day.

    |🇵🇸 | Komentářů: 1
    31.12. 15:00 | Nová verze

    Všem vše nejlepší do nového roku 2026.

    Ladislav Hagara | Komentářů: 10
    31.12. 13:33 | Zajímavý software

    Crown je multiplatformní open source herní engine. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT a GPLv3+. Byla vydána nová verze 0.60. Vyzkoušet lze online demo.

    Ladislav Hagara | Komentářů: 0
    31.12. 12:11 | Zajímavý článek

    Daniel Stenberg na svém blogu informuje, že po strncpy() byla ze zdrojových kódů curlu odstraněna také všechna volání funkce strcpy(). Funkci strcpy() nahradili vlastní funkcí curlx_strcopy().

    Ladislav Hagara | Komentářů: 6
    31.12. 03:00 | Nová verze

    Byla vydána nová verze 25.12.30 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    30.12. 18:55 | IT novinky

    Společnost Valve publikovala přehled To nej roku 2025 ve službě Steam aneb ohlédnutí za nejprodávanějšími, nejhranějšími a dalšími nej hrami roku 2025.

    Ladislav Hagara | Komentářů: 0
    30.12. 16:11 | Komunita

    Byly publikovány výsledky průzkumu mezi uživateli Blenderu uskutečněného v říjnu a listopadu 2025. Zúčastnilo se více než 5000 uživatelů.

    Ladislav Hagara | Komentářů: 0
    30.12. 03:33 | Bezpečnostní upozornění

    V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (0%)
     (0%)
     (0%)
     (14%)
     (57%)
     (14%)
     (0%)
     (0%)
     (29%)
     (43%)
    Celkem 7 hlasů
     Komentářů: 1, poslední dnes 06:15
    Rozcestník

    Dotaz: Java getResource()

    7.8.2009 17:10 WikiDOG
    Java getResource()
    Přečteno: 601×

    V mem programu nacitam obrazky (jpg, png). Tyto obrazky jsou uvnitr vysledneho .jar souboru, proto je nacitam takto:

    imageIcon = new ImageIcon(getClass().getResource(filename)); 
    

    Pak jsem se rozhodl, ze dovolim uzivatelovi si nacist i vlastni obrazky, ktere ma ulozene nekde v filesystemu. Uzivatelovi tedy vybehne filechooser, on zvoli nejaky obrazek a jeho filename prijde do funkce, ktera obsahuje radek nahore. Jenze ten mi hodi chybu, ze obrazek nemuze najit. Na obrazky nacitane externe (mimo jar) mi funguje toto:

    imageIcon = new ImageIcon(filename);
    

    Proto jsem problem docasne (vim ze je to strasne prasarna) vyresil takto:

    try
    {
        imageIcon = new ImageIcon(getClass().getResource(filename));         
    }
    catch (NullPointerException ex)
    {
        imageIcon = new ImageIcon(filename);
    }
    

    Ted jsem z toho ale zmateny, proc musim pouzivat dva ruzne zpusoby nacitani obrazku? Existuje nejaky zpusob, kdy je jedno jestli obrazek nacitam z jar nebo externe?

    Odpovědi

    kouby avatar 7.8.2009 17:26 kouby | skóre: 27 | blog: init | Praha
    Rozbalit Rozbalit vše Re: Java getResource()

    Konstruktor třídy ImageIcon přijímá URL což je váš filename. Takže stačí udělat obecnou metodu:

    ImageIcon icon = getImageIcon(URL filename);

    Tato metoda přijme URL a načte ikonku z obecné URL. Před zavoláním metody dáte do filename jenom příslušnou URL, buď voláním getClass().getResource(filename) a převedete na URL. Nebo z fileChooseru new URL(filename).

     

    That's thirty minutes away. I'll be there in ten.
    7.8.2009 20:43 WikiDOG
    Rozbalit Rozbalit vše Re: Java getResource()

    Vami popisovany zpusob funguje v prvnim pripade (getClass().getResource(filename)), ale v pripade fileChooseru dostanu tuto chybu:

    java.net.MalformedURLException: no protocol: /home/wikidog/Downloads/pict/tree.jpg
    

    Dany radek vypada takto:

    loadImage(new URL(fc.getSelectedFile().toString()));
    
    7.8.2009 20:56 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Java getResource()
    Třída File má metodu toURI(), z URI získáte URL voláním toURL(). Váš kód je špatně, protože konstruktoru URL se jako parametr předává textové url, ne cesta k souboru.
    7.8.2009 22:26 WikiDOG
    Rozbalit Rozbalit vše Re: Java getResource()

    Jak se lisi textova url od cesty k souboru?

    7.8.2009 22:46 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Java getResource()
    Cesta k souboru je např. /etc/passwd, URL je file:///etc/passwd.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.