MSHTML: CreateDocumentFromString instead of CreateDocumentFromUrl

前端 未结 3 1638
梦谈多话
梦谈多话 2020-11-30 14:36

I\'d like to use the MSHTML library to parse some HTML that I have in a string variable. However, I can\'t figure out how to do this. I can easily parse the contents of a

相关标签:
3条回答
  • 2020-11-30 14:41

    This is a much better example. You will not get a null exception, nor late binding.

    (And if you use WPF, just add System.Windows.Forms in your reference.)

    Dim a As Object
            a = New mshtml.HTMLDocument
    
            a.open()
            a.writeln(code)
            a.close()
    
            Do Until a.readyState = "complete"
                System.Windows.Forms.Application.DoEvents()
            Loop
    
    
            Dim doc As mshtml.HTMLDocument = a
    
    
    
            Dim b As mshtml.HTMLSelectElement = doc.getElementsByTagName("Select").item("lang", 0)
    
    0 讨论(0)
  • 2020-11-30 14:42

    You can;

    Dim odoc As Object
    
    Set odoc = CreateObject("htmlfile") '// late binding
    
    '// or:
    '// Set odoc = New HTMLDocument 
    '// for early binding
    
    odoc.open
    odoc.write "<p> In his house at R'lyeh, dead <b>Cthulhu</b> waits dreaming</p>"
    odoc.Close
    MsgBox odoc.body.outerHTML
    
    0 讨论(0)
  • 2020-11-30 14:59

    For straight HTML code such as Access-Rich-Text this does it:

    Dim HTMLDoc As New HTMLDocument
    
    HTMLDoc.Body.innerHTML = strHTMLText
    
    0 讨论(0)
提交回复
热议问题