Složitější pole – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Složitější pole – Java – Fórum – Programujte.comSložitější pole – Java – Fórum – Programujte.com

 

Honza
~ Anonymní uživatel
450 příspěvků
27. 11. 2013   #1
-
0
-

Ahoj přátelé, jsem v Javě začátečník. Zabývám se zejména PHP a z toho plyne má otázka.

Hraju si s Javou a chtěl jsem si udělat parser XML a zasekl jsem se na problému s polem.

nevím totiž hloubku xml a ani délku. Tím mi nastává problém, jak nadefinovat v Javě pole. Vím, že můžu použít map, kde se parádně hodí i ten klíč. Ale problém je, že nevím, jestli budu potřebovat více rozměrné pole nebo ne. Nevím přesně jak to popsat. takže zkusím názornou ukázku:

xml:

<article>
 <title>titulek</title>
   <author>
    <name> Radek </name>
 </author>
</article>
<article>
 <title>titulek2</title>
   <author>
    <name> Libor</name>
 </author>
</article>

...

V php bych si prostě tu strukturu ukládal do pole nějak takto (bez logiky)

$items = array();

$items['article'+$i] = array();

$items['article'+$i]['title'] = 'titulek';

$items['article'+$i]['author']  = array();

$items['article'+$i]['author']['name']  = 'Radek';

a jde o  to, že bych si to chtěl udělat něco univerzálního, že prostě nevím předem strukturu xml, a vrátilo by se mi prostě pole. Jenže právě nevím kdy to bude mít potomků více a kdy zase ne

Nahlásit jako SPAM
IP: 88.102.105.–
Flowy0
Věrný člen
27. 11. 2013   #2
-
0
-

akym sposobom myslis "hlbku xml"? ... jeden clanok moze obsahovat dalsie? alebo je mozne ze bude obsahovat polozky ktore zatial nepoznas? ... ak je to len s tym ze nevies kolko autorov bude obsahovat tak najjednoduchsie bude vytvorit si class

class article {
	String title;
	ArrayList<String> autor = new ArrayList<String>();
}

a tieto potom len ukladat za sebou do nejakeho dalsieho arraylistu alebo uz co si zvolis

v podstate by si si mohol definovat do obsahu tej triedy dalsie clanky (tym by si vyriesil prvu moznost) ale stalo by sa to znacne neprehladne

Nahlásit jako SPAM
IP: 178.41.208.–
https://github.com/Flowy
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 7 hostů

Podobná vlákna

Složitější pole — založil Honza

Složitější LEFT JOIN — založil David Plšek

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý