V neděli 30. června skončí (EOL) podpora CentOS Linux 7.
David Tschumperlé a Garry Osgood v obšírném článku se spoustou náhledů shrnují vývoj multiplatformního svobodného frameworku pro zpracování obrazu G'MIC (GREYC's Magic for Image Computing, Wikipedie) za poslední rok.
Andrew S. Tanenbaum byl oceněn 2023 ACM Software System Award (Wikipedie) za operační systém MINIX.
Celkový počet stažení aplikací z Flathubu překročil 2 miliardy. Aktuální Statistiky Flathubu: Celkový počet stažení 2 002 793 783. Celkem desktopových aplikací 2 636.
Byla vydána nová verze 4.8.0 programu na úpravu digitálních fotografií darktable (Wikipedie).
Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 142 (pdf) a HackSpace 79 (pdf).
Qtractor (Wikipedie) dospěl do verze 1.0.0. Jedná se o Audio/MIDI vícestopý sekvencer.
Byl vydán svobodný kancelářský balík OnlyOffice Docs 8.1. Vedle četných oprav přináší několik funkcí včetně podpory editace textu v PDF a vytváření formulářů v PDF.
Daniel Stenberg, autor nástroje curl, z databáze SteamDB zjistil, že aktuálně 22 734 her na Steamu používá curl.
Společnost Anthropic vydala Claude 3.5 Sonnet, tj. novou verzi své umělé inteligence Claude (Wikipedie). Videoukázky na YouTube. S Claude 3, stejně jak s GPT-3.5, Llama 3 a Mixtral, si lze pokecat bez přihlašování na DuckDuckGo AI Chat.
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(); }
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.
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...
Nevi prosim nekdo? Opravdu nutne bych to potreboval vyresit. Myslim, ze NetBeans je natolik rozsirene IDE, ze hodne lidi s necim podobnym muselo setkat...
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 :)
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...
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
.
Tiskni
Sdílej: