tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
4
ZUGRIFFE
727
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    binderj1 binderj1 ist offline Rookie
    Registriert seit
    Dec 2010
    Beiträge
    8
    Hallo

    Ich habe ein VB-Prog. (VB2005 express) geschrieben, das eine XML-Datei aus dem Internet anzeigt.
    Es funktioniert alles, solange in der XML-Datei keine Umlaute vorkommen.

    Code :
    1
    2
    
    Dim xmlDoc As New XmlDocument
    xmlDoc.Load("http://www.********.**/data.xml")

    http://www.tutorials.de/attachment.p...1&d=1305312016

    wo liegt der Fehler

    LG
    Hannes
    Miniaturansicht angehängter Grafiken Miniaturansicht angehängter Grafiken Probleme mit Umlaute-vb-fehler.jpg  
     

  2. #2
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    VB2005 express = .NET. Ich verschiebe das
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  3. #3
    Avatar von Shakie
    Shakie Shakie ist offline Mitglied Diamant
    Registriert seit
    May 2004
    Ort
    Europa
    Beiträge
    2.048
    Vielleicht ist das Encoding im XML-Dokument falsch angegeben. Probier mal UTF-8. Siehe auch hier.
     
    hihi = -h²

  4. #4
    binderj1 binderj1 ist offline Rookie
    Registriert seit
    Dec 2010
    Beiträge
    8
    Hallo Shakie

    Das etwas mit der formatierung des Zeichensatzes (encoding) nicht passt, ist mir schon klar, mein Problem ist, das ich die xml-Datei nicht verändern kann, da sie vonn einem anderen Server generiert wird.
    Meine Frage lautet nun. Wie kann ich die XML-Datei einlesen (mit Umlaute)?

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    
    Imports System
    Imports System.Xml
    Public Class Form1
        
        Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        Dim xmlDoc As New XmlDocument()
     
            xmlDoc.Load("http://www.******.**/data.xml")
                For Each firstChild As XmlNode In xmlDoc.ChildNodes
                
                  If firstChild.HasChildNodes = True Then
                    
                For Each secondChild As XmlNode In firstChild
                       
                      For Each echteDaten As XmlNode In secondChild
                            
                        Select Case echteDaten.Name.ToLower
                    Case "plz"
                                    Dim plz As String = echteDaten.InnerXml
                                    Label1.Text = plz
     
                          Case "ort"
                                    Dim ort As String = echteDaten.InnerXml
                                    Label2.Text = ort
                    Case Else
                                    'dieses Element ist unbekannt
                          End Select
     
                        Next
     
                      Next
     
                    End If
     
                  Next
           
        End Sub


    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    
    <root>
    <plz>
    <![CDATA[ 1234 ]]> 
    </plz>
    <ort>
    <![CDATA[ NIEDERÖSTERREICH ]]> 
    </ort>
    </root>
     

  5. #5
    Avatar von Shakie
    Shakie Shakie ist offline Mitglied Diamant
    Registriert seit
    May 2004
    Ort
    Europa
    Beiträge
    2.048
    Keine Ahnung, wie man ungültiges XML mit .Net-Klassen einließt. Du kannst dir natürlich immer selber einen Parser schreiben.
    Hier http://validator.w3.org/ kannst du herausfinden, ob dein XML wirklich ungültig ist. Falls ja, dann solltest du die Schuld nach Möglichkeit auf den Server schieben, der das Dokument generiert. Schließlich macht er dann den Fehler und nicht du.
    Hier schlägt jemand vor einen StreamReader zu benutzen um das Encoding explizit angeben zu können. Probier das mal.
    Geändert von Shakie (16.05.11 um 18:46 Uhr)
     
    hihi = -h²

Ähnliche Themen

  1. PHP Dateinamen Umlaute machen Probleme
    Von Noeden im Forum PHP
    Antworten: 9
    Letzter Beitrag: 13.03.11, 22:14
  2. Probleme mit Umlaute und Dreamweaver
    Von medico im Forum HTML-Editoren
    Antworten: 2
    Letzter Beitrag: 06.05.09, 09:25
  3. PHP - JSON Encoder Umlaute Probleme
    Von g3radiochris im Forum PHP
    Antworten: 2
    Letzter Beitrag: 02.04.08, 15:22
  4. Probleme mit ZIP Funktion (Umlaute)
    Von liquidbeats im Forum PHP
    Antworten: 0
    Letzter Beitrag: 04.01.08, 12:16
  5. Antworten: 7
    Letzter Beitrag: 01.09.04, 21:42