Forum: PC-Programmierung [VB2010] Problem beim einlesen ein XML Datei von Eagle


von Ratuilo (Gast)


Angehängte Dateien:

Lesenswert?

Hey Leute,

Will mit einem VB 2010 Programm Bauteile von einer Eagle Datei auslesen.
Die Datei ist wie eine XML Datei strukturiert. Das Problem an der Sache,
wenn ich die Datei lade bekomme ich folgenden Fehler:

"Ein Name darf nicht mit dem Zeichen '-', hexadezimaler Wert 0x2D, 
beginnen. Zeile 53, Position 50."

Habe mal die Datei angehangen.

Der Code ist:
1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
2
        Dim XDoc As New System.Xml.XmlDocument
3
        Dim Xfilename As String
4
        Xfilename = "C:\Dokumente und Einstellungen\Ramser_Fritz\Desktop\Neuer Ordner\beispiel.SCH"
5
        Try
6
            XDoc.Load(Xfilename)
7
        Catch ex As Exception
8
            MsgBox(ex.Message)
9
        End Try
10
    End Sub

von Peter II (Gast)


Lesenswert?

Ratuilo schrieb:
> "Ein Name darf nicht mit dem Zeichen '-', hexadezimaler Wert 0x2D,
> beginnen. Zeile 53, Position 50."

wo ist dann Zeile 53 Pos 50 in deiner Quellcodedatei?

von Ratuilo (Gast)


Lesenswert?

Das müsste folgende Zeile sein:

<layer number="40" name="bKeepout" color="1" fill="11" visible="no" 
active="no"/>

von Peter II (Gast)


Lesenswert?

Ratuilo schrieb:
> Das müsste folgende Zeile sein:

Ich meinte in der Quellcode datei, nicht in der xml.

von Ratuilo (Gast)


Lesenswert?

Das ist der komplette Code:
1
Public Class Form1
2
3
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
4
        Dim XDoc As New System.Xml.XmlDocument
5
        Dim Xfilename As String
6
        Xfilename = "C:\Dokumente und Einstellungen\Ramser_Fritz\Desktop\Neuer Ordner\beispiel.SCH"
7
        Try
8
            XDoc.Load(Xfilename)
9
        Catch ex As Exception
10
            MsgBox(ex.Message)
11
        End Try
12
    End Sub
13
End Class

von Ratuilo (Gast)


Lesenswert?

Werde das Problem mal in einem .Net Forum posten.
Vielleicht weis dort wer weiter.

von Sven (Gast)


Lesenswert?

Hi, ich habs gerade mal mit einer Datei von mir versucht. Im alten 
XML-API mit XmlDocument konnte ich die Datei auch nicht öffnen, jedoch 
mit einer anderen Fehlermeldung. Ich muss gestehen, ich habe gerade 
keine Zeit den Fehler zu suchen und habe es im neueren API mit XDocument 
probiert und es funktioniert.
1
    String fileName = @"C:\Users\sg\Documents\eagle\...\usb.sch";
2
3
    try
4
    {
5
        XDocument xdoc = XDocument.Load(fileName);
6
    }
7
    catch (Exception ex)
8
    {
9
        Console.WriteLine(ex.Message);
10
    }

Du kannst es ja mal damit versuchen! Ansonsten wird wahrscheinlich die 
Datei benötigt um den Fehler zu finden.

von Ratuilo (Gast)


Lesenswert?

Die Datei würde sich im ersten Beitrag befinden.

von Georg A. (georga)


Lesenswert?

xmllint beschwert sich nicht, also ist es wohl gültiges XML. Das ist 
schon mal gut, nicht alles, was auf .XML endet, ist auch 
standardgemäss... Firefox kann es auch als ausklappbares XML anzeigen.

Ich sehe in Zeile 53 (die mit number=43) auch nichts Auffälliges.

Hat wohl der XML-Parser ein Gebrechen...

von Arc N. (arc)


Lesenswert?

Sven schrieb:
> Hi, ich habs gerade mal mit einer Datei von mir versucht. Im alten
> XML-API mit XmlDocument konnte ich die Datei auch nicht öffnen, jedoch
> mit einer anderen Fehlermeldung.

Mit welcher Fehlermeldung?
Hier (.Net 4.5) funktioniert
1
   XmlDocument doc = new XmlDocument();
2
   doc.Load("e:\\beispiel.sch");
problemlos ohne Exception

von max (Gast)


Lesenswert?

Hi, ich glaube das Problem ist das fehlende @ vor dem String.
Xfilename = @"C:\Dokumente und Einstellungen\Ramser_Fritz\Desktop\Neuer 
Ordner\beispiel.SCH"

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.