NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: chyba při čtení html kódu z xml souboru

V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Tomáš Brůna
Tvůrce
Avatar
Tomáš Brůna:26.1.2016 19:57

Ahoj,
když čtu z xml souboru HTML kód, tak mi to vyhodí výjímku:

Chyba při čtení souboru: ParseError at [row,col]:[21,81]
Message: The reference to entity "subset" must end with the ';' delimiter.

xml soubor nemůžu upravit, protože se vždy stáhne nový.

tady je kód kde čtu:

  private static void nactiRecept(String cesta)
    {
     XMLInputFactory factory = XMLInputFactory.newInstance();
     XMLStreamReader xsr = null;

     try
     {
            xsr = factory.createXMLStreamReader(new FileReader(cesta));
            String element = "";

            while(xsr.hasNext())
            {
                // načítáme element
                if (xsr.getEventType() == XMLStreamConstants.START_ELEMENT)
                {
                        element = xsr.getName().getLocalPart();
                        if (element.equals("div"))
                        {
                         if (xsr.getAttributeValue(0).contains("wikiPreview"))
                                System.out.println("jkjklj");
                        }
                }
                xsr.next();
        }

}
catch (Exception e)
{
        System.err.println("Chyba při čtení souboru: " + e.getMessage());
}
finally
{
        try
        {
                xsr.close();
        }
        catch (Exception e)
        {
                System.err.println("Chyba při uzavírání souboru: " + e.getMessage());
        }
}
    }

celý xml soubor:

Odpovědět
26.1.2016 19:57
Vi veri universum vivus vici
Avatar
Atrament
Člen IT Redactor Gang
Avatar
Odpovídá na Tomáš Brůna
Atrament:27.1.2016 16:09

Tak je víceméně jasné v čem je problém - máš tam někde znak &, který v xml jen tak být nemůže, pravděpodobně to je součást nějakého linku. Nemůžeš sem hodit celý ten xml soubor? Nikdy jsem to ještě nemusel řešit, ale hádám že by mohlo stačit ten soubor prohnat filtrem co by nahradil všechny výskyty & za

&

nebo něco na ten způsob.

 
Nahoru Odpovědět
27.1.2016 16:09
Avatar
Tomáš Brůna
Tvůrce
Avatar
Tomáš Brůna:28.1.2016 6:46

Jasně, promiň zapomněl jsem :)
http://www.itnetwork.cz/dev-lighter/673

Nahoru Odpovědět
28.1.2016 6:46
Vi veri universum vivus vici
Avatar
Atrament
Člen IT Redactor Gang
Avatar
Odpovídá na Tomáš Brůna
Atrament:28.1.2016 16:32

Ale vždyť to vůbec není xml ale docela obyčejné html. To musíš parsovat html parserem a ne xml parserem:)

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
28.1.2016 16:32
Avatar
Tomáš Brůna
Tvůrce
Avatar
Odpovídá na Atrament
Tomáš Brůna:28.1.2016 16:42

aha, díky moc :) , jen napadlo, že by to tak mohlo jít ;)

Nahoru Odpovědět
28.1.2016 16:42
Vi veri universum vivus vici
Avatar
Tomáš Brůna
Tvůrce
Avatar
Nahoru Odpovědět
28.1.2016 16:43
Vi veri universum vivus vici
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.