• 2 odgovora
  • 4.151 pregleda
sax parsing #pcdata ? 13.05.2004. u 11:08 · pre 273 meseci #1
Možda bi ovo trebalo da ide u forum XML, ali ja ipak imam problem kako da parsiram XML u Javi.
U XML fajlu imam DOCTYPE i u njemu:
.
.
Code:

<!ELEMENT USLOV (#PCDATA)>
.
.
<USLOV>Ovde ide neki tekst</USLOV>
.
.

Kada hocu da pomocu SAX parsera kroz

Code:
MojHandler extends DefaultHandler{...}


dodjem do teksta ne mogu nikako! Zapravo, ne znam kako i da li je uopšte moduće.
Ni startElemet(...) ni endElement(...) metode mi to ne omogućavaju. Mogu kroz character(...) ali mi je glupo da se konjošem.
Ako promenim

Code:
<USLOV TEKST="Ovde ide neki tekst" />


(naravno i uz promenu DOCTYPE)

mogu lako da sa

Code:
String x = attr.getValue("TEKST");


dođem do željenog podatka.

Gde grešim, i da li je ovo uopšte moguće kroz SAX ili moram da idem na DOM ?

Hvala na svim savetima.
Re: sax parsing #pcdata ? 13.05.2004. u 11:26 · pre 273 meseci #2
Citat:

Kada hocu da pomocu SAX parsera kroz

Code:


MojHandler extends DefaultHandler{...}



dodjem do teksta ne mogu nikako! Zapravo, ne znam kako i da li je uopšte moduće.


Kako mislis ne mozes da dodjes do teksta? Ja sam imao slican problem, tj. za svaki element sam dobijao prazan string. Doduse, ja nisam koristio DTD, niti bilo kakvu validaciju, pa su mi problem bili razmaci i novi redovi u fajlu (parser ih je prepoznavao kao elemente).
S obzirom da ti imas DTD, ne znam da li je to, ali meni je pomogla upotreba metoda trim() (ne secam se da li je deo SAX paketa ili mozda String klase)
Re: sax parsing #pcdata ? 15.05.2004. u 02:51 · pre 273 meseci #3
Citat:
me-tuzalem:
Mogu kroz character(...) ali mi je glupo da se konjošem.


nikako drugačije, već ćeš morati da se "konjošeš" (ma šta to značilo). to je jedini način da pročitaš pcdata uz pomoć SAXa..
Potpis
blogče :: unescaped beta
  »
go-paste extenzija
  »
reč dana: backup
  »
bočne koalicije
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme