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 18:44 | Komunita

    Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.

    Ladislav Hagara | Komentářů: 0
    dnes 13:22 | Zajímavý software

    Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.

    🇨🇽 | Komentářů: 0
    dnes 13:11 | Nová verze

    XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).

    🇨🇽 | Komentářů: 0
    dnes 03:33 | Nová verze

    Wayback byl vydán ve verzi 0.3. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | Nová verze

    Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.

    Ladislav Hagara | Komentářů: 0
    24.12. 02:11 | Komunita

    Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.

    Ladislav Hagara | Komentářů: 26
    24.12. 02:00 | Nová verze

    Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    23.12. 18:33 | Nová verze

    Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.

    Ladislav Hagara | Komentářů: 0
    23.12. 13:55 | Nová verze

    Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 0
    23.12. 12:44 | Nová verze

    Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.

    Ladislav Hagara | Komentářů: 0
    Kdo vám letos nadělí dárek?
     (34%)
     (2%)
     (14%)
     (2%)
     (2%)
     (2%)
     (16%)
     (16%)
     (12%)
    Celkem 104 hlasů
     Komentářů: 18, poslední 24.12. 15:29
    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: 1079×

    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.