Avatar billede df_n Nybegynder
17. januar 2002 - 17:16 Der er 9 kommentarer og
1 løsning

html api

findes der et html api.. og hvor kan jeg finde det ?
Avatar billede carstenknudsen Nybegynder
17. januar 2002 - 20:46 #1
Hvad mener du men en html api?  Der findes
en komponent javax.swing.JEditorPane der
forstår html og kan vise en html formatteret
tekst.
Avatar billede thums Praktikant
18. januar 2002 - 10:00 #2
det jeg tror personen mener er om der findes en beskrivelse for alle de html tags der findes.... er dog mig en gåde hvorfor han ikke spørger i html forum\'et så....
Avatar billede carstenknudsen Nybegynder
18. januar 2002 - 10:56 #3
Så ville der vel næppe stå html API....
Avatar billede df_n Nybegynder
18. januar 2002 - 16:46 #4
Nop..... jeg søger et api jeg kan bruge... lidt ala, en xml parser men bare med de predefinered html tags.

Så jeg kan gå ind på en html side og parse den.
Avatar billede carstenknudsen Nybegynder
19. januar 2002 - 10:52 #5
Du kan godt parser et html dokument.
Først skal du smide dokumentet i en JEditorPane.
JEditorPane pane = new JEditorPane();
Så skal du lægge et dokument i f.eks.
pane.setPage( \"http://www.eksperten.dk\" );
Dernæst får du et dokument ud som du kan undersøge om det er et html dokument.  Hvis det er kan du iterere gennem dokumentet. Nedenstående kode eksempel bruger jeg selv til at ekstrahere alle href tags i et html dokument og lave en popup menu med adresserne. Jeg ved ikke om det er muligt at lede efter alle tags, jeg har kun prøvet at iterere dennem en bestemt type tags ad gangen.
    Document document = pane.getDocument();
    if ( document instanceof HTMLDocument ) {
        HTMLDocument htmldoc = (HTMLDocument)document;
        HTMLDocument.Iterator iterator = htmldoc.getIterator( HTML.Tag.A );
        iterator.next();
        while ( iterator.isValid() ) {
        AttributeSet attr = iterator.getAttributes();
        boolean found = false;
        Enumeration enum = attr.getAttributeNames();
        while ( enum.hasMoreElements() && ! found ) {
            Object name = enum.nextElement();
            if ( name.equals( HTML.Attribute.HREF ) ) {
            found = true;
            Object value = attr.getAttribute( name );
            boolean problem = false;
            URL url = null;
            try {
                url = new URL( (String)value );
            } // try
            catch ( MalformedURLException murle ) {
                problem = true;
            } // catch
            if ( ! problem ) {
                JButton button = new JButton( (String)value );
                menu.add( button );
                button.addActionListener( buttonListener );
            } // if
            } // if
        } // while
        iterator.next();
        } // while
    } // if
Avatar billede df_n Nybegynder
20. januar 2002 - 12:49 #6
der skal ikke være nogen gui på den !!!!
Avatar billede carstenknudsen Nybegynder
20. januar 2002 - 19:22 #7
Det behøver du da heller ikke. Du behøver ikke at vise din JEditorPane den kan bare eksistere som et objekt.  Det er dog muligt at du kan få et Document uden en JEditorPane, jeg har bare ikke haft behov for at prøve det.
Avatar billede professoren Nybegynder
21. januar 2002 - 12:30 #8
Der er flere API\'s---windows, AIX, linux, mac, osv.  HTML virker for dem ALLE SAMMEN!
dvs en fællesstandard. Det gælder også XML standard, den er fælles for alle OS.
Avatar billede carstenknudsen Nybegynder
21. januar 2002 - 12:56 #9
professor: og .......
Avatar billede df_n Nybegynder
18. januar 2003 - 12:44 #10
Kan selvfølgelig bruge en xml parser......

Er det ikke lidt for dyrt at begynde at involvere swing....
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester