WebBrowser - uloženie obsahu   zodpovězená otázka

VB.NET

Dobrý deň.

Vo VB 2008 EE mám na formulári WebBrowser1. Ak tam pridám kód, ktorý mi dal pán Tomáš Hübelbauer

 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        WebBrowser1.DocumentText = "<body contenteditable=true></body>"
    End Sub

Tak môžem skopírovať obsah ľubovoľnej stránky do WebBrowsera vrátane obrázkov, ktoré nie sú zarovnané.

Ak tám pridám ďalší kód (znova od pána Hübelbauera),

 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        WebBrowser1.Document.ExecCommand("InsertImage", True, Nothing)
    End Sub

tak mi to zobrazí dialog na zarovnaie obrázka a zarovná ho vpravo alebo vľavo, v prostriedku to má troška problémy.

Dá sa teraz uložiť a potom znova načítať obsah WebBrowsera?

Za prípadnú odpoveď vopred ďakujem.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Zdravím, Luboši

Zde je kód, který jsem vytáhl ze svého projektu. Uloží dokument do c:/saved i s jeho externími členy:

    Private Sub SD_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SD.Click
            Dim fEnumerator as integer = 0
            For Each wElement As HtmlElement In WebBrowser1.Document.All
                If Not String.IsNullOrEmpty(wElement.GetAttribute("src")) And wElement.GetAttribute("src").StartsWith("file:///") Then
                    fEnumerator += 1
                    Dim wURL As String = HttpUtility.UrlDecode(wElement.GetAttribute("src")).Replace("file:///", Nothing)
                    Dim nURL As String = "c:\Saved\"  + fEnumerator.tostring() + Path.GetExtension(wURL)
                    File.Copy(wURL, nURL)
                    wElement.SetAttribute("src", nURL)
                End If
            Next
            My.Computer.FileSystem.WriteAllText("c:\saved\index.html", webbrowser1.document.body.innerhtml, False, Encoding.Default)
    End Sub

Načtení pak:

WebBrowser1.document.body.innerhtml = my.computer.filesystem.readalltext("") ' přečte soubor z adresy, kterou si vezmeš třeba z dialogu

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

HttpUtility is not declared

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Aha, importuj System.Net a System.IO .

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět
Imports System.Net

Nepomohlo

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Co to hlásí za chybu?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

HttpUtility is not declared

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Omlouvám se, je to moje chyba.

Do referencí projektu přidej knihovnu System.Web a importuj System.Web místo System.NEt

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Vďaka, funguje to, až na jednú drobnosť, nevráti naspäť všetky znaky. Napr.: nepozná uvodzovky. Ale aj tak je to výborné. Na úvod.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Možná je to kódováním (nejspíš), takže zkus k ReadAllText přidat údaj o kódování System.Text.Encoding.Default.

nahlásit spamnahlásit spam 2 / 2 odpovědětodpovědět

Výborne!

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:  
Heslo:  

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback