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í
×
    včera 18:55 | Humor

    Jak na webu co nejšíleněji zadávat datum? Jak to uživatelům co nejvíce znepříjemnit? V Bad UX World Cup 2025 (YouTube) se vybíraly ty nejšílenější UX návrhy. Vítězným návrhem se stal Perfect Date.

    Ladislav Hagara | Komentářů: 6
    včera 12:44 | Zajímavý software

    Společnost Collabora vydala (YouTube) na LibreOffice založený desktopový kancelářský balík Collabora Office. Pro Windows, macOS a Linux. Se stejným uživatelským rozhraním jako Collabora Online. Svůj desktopový kancelářský balík s rozhraním LibreOffice pojmenovala Collabora Office Classic.

    Ladislav Hagara | Komentářů: 5
    včera 12:00 | Nová verze

    Glen MacArthur vydal AV Linux (AVL) a MX Moksha (MXM) 25. S linuxovým jádrem Liquorix. AV Linux (Wikipedie) je linuxová distribuce optimalizována pro tvůrce audio a video obsahu. Nejnovější AV Linux vychází z MX Linuxu 25 a Debianu 13 Trixie. AV Linux přichází s desktopovým prostředím Enlightenment 0.27.1 a MX Moksha s prostředím Moksha 0.4.1 (fork Enlightenmentu).

    Ladislav Hagara | Komentářů: 0
    27.11. 17:55 | Nová verze

    Ubuntu pro testování nových verzí vydává měsíční snapshoty. Dnes vyšel 1. snapshot Ubuntu 26.04 LTS (Resolute Raccoon).

    Ladislav Hagara | Komentářů: 0
    27.11. 14:33 | IT novinky

    Zástupci členských států EU se včera shodli na návrhu, který má bojovat proti šíření materiálů na internetu zobrazujících sexuální zneužívání dětí. Nařízení známé pod zkratkou CSAM a přezdívané chat control mělo množství kritiků a dlouho nebyla pro jeho schválení dostatečná podpora. Pro schválení byla potřeba kvalifikovaná většina a dánské předsednictví v Radě EU se snažilo dosáhnout kompromisu. Návrh nakonec po dlouhých týdnech

    … více »
    Ladislav Hagara | Komentářů: 12
    27.11. 12:22 | Zajímavý software

    Britské herní studio Facepunch stojící za počítačovými hrami Garry's Mod a Rust uvolnilo svůj herní engine s&box (Wikipedie) jako open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT. Herní engine s&box je postavený nad proprietárním herním enginem Source 2 od společnosti Valve.

    Ladislav Hagara | Komentářů: 1
    27.11. 04:55 | Komunita

    Vývoj programovacího jazyka Zig byl přesunut z GitHubu na Codeberg. Sponzoring na Every.

    Ladislav Hagara | Komentářů: 6
    27.11. 04:44 | Komunita

    Stejně jako GNOME i KDE Plasma končí s X11. KDE Plasma 6.8 poběží už pouze nad Waylandem. Aplikace pro X11 budou využívat XWayland.

    Ladislav Hagara | Komentářů: 3
    26.11. 14:55 | IT novinky

    Poslanci Evropského parlamentu dnes vyzvali k výraznému zvýšení ochrany nezletilých na internetu, včetně zákazu vstupu na sociální sítě pro osoby mladší 16 let. Legislativně nezávazná zpráva, kterou dnes odsouhlasil Evropský parlament poměrem 493 hlasů pro ku 92 proti, kromě zavedení věkové hranice 16 let pro využívání sociálních sítí, platforem pro sdílení videí či společníků s umělou inteligencí (AI) vyzývá také k zákazu … více »

    Ladislav Hagara | Komentářů: 52
    26.11. 14:11 | Humor

    Doom v KiCadu nebo na osciloskopu? Žádný problém: KiDoom: Running DOOM on PCB Traces a ScopeDoom: DOOM on an Oscilloscope via Sound Card.

    Ladislav Hagara | Komentářů: 3
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (16%)
     (24%)
     (16%)
     (18%)
    Celkem 417 hlasů
     Komentářů: 17, poslední 19.11. 21:57
    Rozcestník

    Dotaz: Netbeans projekt a relativni cesta k souboru

    23.7.2009 11:07 FITak
    Netbeans projekt a relativni cesta k souboru
    Přečteno: 1077×

    Dobry den, programuji projekt v Netbeans a zasekl jsem se na zdanlive malickosti. V programu pracuji s XML soubory a mam tedy tridu pro jejich nacitani a pro jejich dalsi zpracovani.

    Jeste pred vysvetlenim problemu sem hodim strom projektu:

    $ tree -d
    .
    |-- build
    |   |-- classes
    |   |   `-- program
    |   |       |-- data
    |   |       |-- images
    |   |       `-- xml
    |   `-- empty
    |-- nbproject
    |   `-- private
    |-- src
    |   `-- program
    |       |-- data
    |       |-- images
    |       `-- xml
    `-- test
    

    Co jsem se dival do automaticky generovaneho kodu obrazky ze slozky images se nacitaji takto:

    jLabelSTARTER.setIcon(new javax.swing.ImageIcon(getClass().getResource("/program/images/start.PNG")));

    Z toho jsem logicky usoudil, ze kontruktor me tridy pro praci s XML budu volat takto:

    XMLworker xmlDoc = new XMLworker("/program/data/score.xml", "scoreboard");
    

    Soubor score.xml ve slozce data SKUTECNE existuje, presvedcoval jsem se o tom snad 100x.

    Vzdy vsak dostanu chybu

    program.xml.XMLworkerException: Cannot load document: java.io.FileNotFoundException: /program/data/score.xml (No such file or directory)
    ...
    

    Zkousel jsem tu cestu k souboru ruzne upravoval, ale bezvysledne

    Pkud by vas nahodou zajimal i ten vlastni konstruktor:

    public XMLworker(String uri, String topElement) throws XMLworkerException
        {
            try
            {
                DocumentBuilder builder=DocumentBuilderFactory.newInstance().newDocumentBuilder();
                doc = builder.parse(uri);
            }
            catch (java.lang.Exception e)
            {
                throw new XMLworkerException("Cannot load document: "+e.toString());
            }
            checkDocumentStructure();
            test();
        }
    

    Odpovědi

    msk avatar 23.7.2009 11:29 msk | skóre: 27 | blog: msk
    Rozbalit Rozbalit vše Re: Netbeans projekt a relativni cesta k souboru
    Tiez som s tym bojoval a dopracoval som sa len nejakeho medzivysledku a dalej som to neskumal. Vysledok je ten, ze pokial mam package "foo.faa" a v nom class-u "Foo" a nejaky subor, dajme tomu "data.txt", tak ho ziskam pomocu:

    Foo().class.getResourceAsStream("data.txt");

    Podmienkou je, aby data.txt a Foo.java boli v jednej package.

    Tym nechcem tvrdit, ze to inak nejde, ale mne to takto staci a dalej to neriesim.
    23.7.2009 11:45 FITak
    Rozbalit Rozbalit vše Re: Netbeans projekt a relativni cesta k souboru

    To reseni mi prijde trochu "pres ruku", ale budiz, s tim bych se smiril. Problem vsak je, ze v adresari data, kde je umisten soubor score.xml neni zadna trida...

    23.7.2009 13:18 FITak
    Rozbalit Rozbalit vše Re: Netbeans projekt a relativni cesta k souboru

    Nevi prosim nekdo? Opravdu nutne bych to potreboval vyresit. Myslim, ze NetBeans je natolik rozsirene IDE, ze hodne lidi s necim podobnym muselo setkat...

    23.7.2009 13:39 jirka
    Rozbalit Rozbalit vše Re: Netbeans projekt a relativni cesta k souboru
    vsimnul jste si rozdilu ve volani funkce getClass().getResource(string)? Parametrem teto funkce je cesta ktera se hleda v CLASSPATH, zatimco kdyz zavolate 
    builder.parse(string) - tak se string povazuje za URI!! /nekde/neco je u me klasicka cesta v rootu.
    spravne by melo byt neco jako:
    jar:file:/.../foo.jar!/program/data/score.xml
    tedy to co dostanete kdyz zavolate
    getClass().getResource("/program/data/score.xml").toURI a to predate jako parametr, 
    a nebo:
    misto 
    doc = builder.parse(uri);
    volat
    doc = builder.parse(getClass().getResourceAsStream(uri));
    
    
    

    snad jsem se vyjadril dost jasne :)

    23.7.2009 13:58 FITak
    Rozbalit Rozbalit vše Re: Netbeans projekt a relativni cesta k souboru

    Aha, dekuji, tuhle cast kodu jsem zkopiroval odsud (serial o XML na linuxsoft):

    http://www.linuxsoft.cz/img/xml03/src/PhoneBookTableModel.java.html

    tak jsem tomu veril...

    23.7.2009 15:21 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Netbeans projekt a relativni cesta k souboru
    S NetBeans to nemá nic společného, je to čistě Java. První případ (načítání ikony) načítá soubor z resources, tedy spolu se zkompilovanými třídami Javy (v souboru JAR, pokud vytvoříte z aplikace balíček). Jak to funguje se dočtete v dokumentaci u metody java.lang.Class.getResource(), případně obdobná metoda u třídy ClassLoader.

    V druhém případě se předává cesta k souboru na disku, dokumentaci hledejte u java.io.File.

    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.