Visual Basic Umlaute gehen beim speichern verloren
#1
Hallo ich habe ein Programm geschrieben was mir eine HTML Datei die in "windows-1252" Datei Kodierung: ISO 8859-2 mir vorlieg. Wenn ich die Datei abspeichern möchte in diesen Format bekomme ich nur ? bei Umlauten und Sonderzeichen, könnt Ihr mir weiterhelfen???
Code:
Pfad = (Environment.GetFolderPath(Environment.SpecialFolder.Desktop)) Dim objStreamWriter As IO.StreamWriter Dim Enc As System.Text.Encoding = System.Text.Encoding.GetEncoding("ISO-8859-2") objStreamWriter = New IO.StreamWriter(Pfad + "\" + Filename, True, Enc) .... .... objStreamWriter.Write(Cleantext) objStreamWriter.Close()
  Zitieren
#2
Also hier steht sowas von dieser Kodierung:
"New StreamReader("file.vb", Encoding.GetEncoding("Windows-1252"), detectEncodingFromByteOrderMarks:=True) "

http://www.microsoft.com/communities/new...&sloc=&p=1

Vielleicht hilft das ja was.
  Zitieren
#3
Guck ich mir mal an ich sehe aber gerade das der Quelltext schon falsch im Textarea steht. Ich muss mal gucken was man da machen kann. Im Browser selber wird er richtig angezeigt klick ich Rechts wird der Quellcode auch richtig angezeigt. Lade ich den Quelltext vom Browser in eine Var oder TextArea sehe ich erst die Fehlinformationen. Denke da muss man ansetzen die Speicherung ist jedenfalls Korrekt Smile
  Zitieren
#4
Hier mein aktueller Code.

Mit dieser variante geht es. Nachteil ich habe keine CSS etc. mehr da nur ab <body></body> gelesen wird.

WebBrowser1.Document.Body.InnerHtml.ToString
Vorher hatte ich WebBrowser1.Document.ToString, dort sind aber diese Sonderzeichen Probleme. :dontknow:

Code:
Dim Filename As String Filename = Dateiname(TextBox1.Text) Filename = Replace(Filename, "%20", " ") ToolStripStatusLabel1.Text = "Zwischenspeicher: " + Filename Dim sAppPath As String sAppPath = Application.StartupPath Dim objStreamWriter As IO.StreamWriter Dim Cleantext As String Dim Enc As System.Text.Encoding = System.Text.Encoding.GetEncoding(1250) objStreamWriter = New IO.StreamWriter(sAppPath + "\" + Filename, True, Enc) Cleantext = Replace(WebBrowser1.Document.Body.InnerHtml.ToString, "%20", " ") objStreamWriter.Write(Cleantext) objStreamWriter.Close() ToolStripStatusLabel1.Text = Filename + " gespeichert."

EDIT: Ich habe es hinbekommen man nehme einfach WebBrowser1.Document.All(0).OuterHtml ...
  Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste