ungünstige Zeichenfolgen im Quellcode?

  • VB.NET

Es gibt 11 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    ungünstige Zeichenfolgen im Quellcode?

    Hallo Leute,

    gibt es irgendwelche Zeichenfolgen die man nicht im Quellcode stehen haben sollte?

    Habe ein paar Zeilen die Wunderbar bis "Motoren" funktioniert aber die anderen beiden spucken mir gar nichts aus egal was ich da rein schreibe.

    VB.NET-Quellcode

    1. Private Sub Bsuchen_Click(sender As Object, e As EventArgs) Handles Bsuchen.Click
    2. Dim etc As New OpenFileDialog
    3. If etc.ShowDialog = DialogResult.OK And etc.FileName <> Nothing Then
    4. TextBox1.Text = etc.FileName
    5. End If
    6. Dim dateiinhalt As String = My.Computer.FileSystem.ReadAllText(TextBox1.Text)
    7. RTB_ETC_Auslesen.Text = dateiinhalt
    8. Dim Betriebsmittel() As String
    9. Dim Steckdosen As Integer
    10. Betriebsmittel = Split(RTB_ETC_Auslesen.Text, " type=""Steckdose"" typeofconduction=")
    11. Steckdosen = UBound(Betriebsmittel) + 1
    12. LMSchuko.Text = Steckdosen - 1
    13. Dim Leuchten As Integer
    14. Betriebsmittel = Split(RTB_ETC_Auslesen.Text, " type=""Leuchte"" typeofconduction=")
    15. Leuchten = UBound(Betriebsmittel) + 1
    16. LMLeuchten.Text = Leuchten - 1
    17. Dim CEESteckdosen As Integer
    18. Betriebsmittel = Split(RTB_ETC_Auslesen.Text, " type=""CEE-Steckdose"" typeofconduction=")
    19. CEESteckdosen = UBound(Betriebsmittel) + 1
    20. LMCEE.Text = CEESteckdosen - 1
    21. Dim Motoren As Integer
    22. Betriebsmittel = Split(RTB_ETC_Auslesen.Text, " type=""Motor"" typeofconduction=")
    23. Motoren = UBound(Betriebsmittel) + 1
    24. LMMotor.Text = Motoren - 1
    25. Dim Stromkreise As Integer
    26. Betriebsmittel = Split(RTB_ETC_Auslesen.Text, " <CIRCUIT dbno="" typeofconduction=")
    27. Stromkreise = UBound(Betriebsmittel) + 1
    28. LMStromkreise.Text = Stromkreise - 1
    29. Dim Rlomessung As Integer
    30. Betriebsmittel = Split(RTB_ETC_Auslesen.Text, " type=""RLO"" typeofconduction=")
    31. Rlomessung = UBound(Betriebsmittel) + 1
    32. LMRLO.Text = Rlomessung - 1
    33. End Sub


    die daten hole ich hierher:
    kann mir jemand den Fehler sagen?
    hab nach drei Stunden fummeln keine Idee mehr.

    XML-Quellcode

    1. <DATABASE version="" level="" size="" language="" country="">
    2. <CUSTOMER dbno="1" id="-" txt="Test">
    3. <BUILDING dbno="1" id="-" txt="Test">
    4. <DISTRIBUTIONCABINET dbno="1" id="-" txt="Test1">
    5. <RCD dbno="1" id="-" txt="Test" nominalcurrent="63A" nominalfaultcurrent="30mA" type="A" characteristic="RCD">
    6. <CIRCUIT dbno="1" id="-" txt="Test 1" typeofconduction="NYM-J" numberofconduction="1" crosssection="2.5" characteristic="B/L" nominalcurrent="16A">
    7. <ELECTRICALEQUIPMENT dbno="1" id="-" txt="Steckdose" type="Steckdose" typeofconduction="NYM-J" numberofconduction="1" location="Büro" crosssection="2.5" />
    8. <ELECTRICALEQUIPMENT dbno="2" id="-" txt="Steckdose" type="Steckdose" typeofconduction="NYM-J" numberofconduction="1" location="Büro" crosssection="2.5" />
    9. <ELECTRICALEQUIPMENT dbno="3" id="-" txt="Steckdose" type="Steckdose" typeofconduction="NYM-J" numberofconduction="1" location="Büro" crosssection="2.5" />
    10. <ELECTRICALEQUIPMENT dbno="4" id="-" txt="CEE" type="CEE-Steckdose" typeofconduction="NYM-J" numberofconduction="1" location="Keller" crosssection="1.5" />
    11. <ELECTRICALEQUIPMENT dbno="5" id="-" txt="Leuchte" type="Leuchte" typeofconduction="NYM-J" numberofconduction="1" location="Keller" crosssection="1.5" />
    12. <ELECTRICALEQUIPMENT dbno="6" id="-" txt="Motor" type="Motor" typeofconduction="NYM-J" numberofconduction="1" location="Büro" crosssection="2.5" />
    13. <ELECTRICALEQUIPMENT dbno="7" id="-" txt="Steckdose" type="Motor" typeofconduction="NYM-J" numberofconduction="1" location="Büro" crosssection="2.5" />
    14. <ELECTRICALEQUIPMENT dbno="8" id="-" txt="Steckdose" type="Steckdose" typeofconduction="NYM-J" numberofconduction="1" location="Büro" crosssection="2.5" />
    15. <ELECTRICALEQUIPMENT dbno="9" id="-" txt="Steckdose" type="Steckdose" typeofconduction="NYM-J" numberofconduction="1" location="Büro" crosssection="2.5" />
    16. <ELECTRICALEQUIPMENT dbno="10" id="-" txt="Steckdose" type="Steckdose" typeofconduction="NYM-J" numberofconduction="1" location="Büro" crosssection="2.5" />
    17. </CIRCUIT>
    18. <CIRCUIT dbno="2" id="-" txt="Test 2" typeofconduction="NYM-J" numberofconduction="1" crosssection="2.5" characteristic="B/L" nominalcurrent="16A" />
    19. <CIRCUIT dbno="3" id="-" txt="Test 3" typeofconduction="NYM-J" numberofconduction="1" crosssection="2.5" characteristic="B/L" nominalcurrent="16A" />


    Danke im vorraus ^^

    Verschoben. ~Thunderbolt

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Thunderbolt“ ()

    Hab das vielleicht ein bisschen falsch beschrieben. Also normaler Weise ist es eine XML, aber dieser Quellcode steht in einer .txt
    Sorry mein Fehler
    Trotzdem danke, vllt werde ich das auch mal brauchen können
    Habe ein paar Zeilen die Wunderbar bis "Motoren" funktioniert aber die anderen beiden spucken mir gar nichts aus egal was ich da rein schreibe.

    Schon mal nen Haltepunkt gesetzt, und deinen Code Schrittweise durchlaufen lassen? Vergewissere dich, das dein Code das tut, was du willst und das die Variablen die Werte beinhalten, die du erwartest.

    Dann sollest du, wenn du schon in VB.Net programmierst, auch VB.Net Funktionen nutzen. Split und UBound sind relikte aus VB6 Zeiten und sollten nicht mehr verwendet werden.
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen
    ​Dann sollest du, wenn du schon in VB.Net programmierst, auch VB.Net Funktionen nutzen. Split und UBound sind relikte aus VB6 Zeiten und sollten nicht mehr verwendet werden.


    Ok 8|
    das kommt wohl daher, das ich noch absoluter VB-Neuling bin, und viel auf andere angewiesen bin :D
    bisher klappt alles sehr gut via C&P und dann anpassen an meine Bedürfnisse.
    Das da jetzt noch irgendwelche Unterschiede sind in den Versionen wusste ich nicht mal 8o
    Und wie gesagt, die ersten Steps fusionieren ja auch nur halt die letzten beiden nicht.
    Wenn ich in den unteren beiden ein Suchwort von oben reinschreibe funktioniert der Code ( nur halt mit dem Falschen Suchwort)
    Deswegen komm ich an der Stelle nicht weiter :(

    mrMo schrieb:


    Schon mal nen Haltepunkt gesetzt, und deinen Code Schrittweise durchlaufen lassen? Vergewissere dich, das dein Code das tut, was du willst und das die Variablen die Werte beinhalten, die du erwartest.
    Lerne deinen Code zu debuggen. In meiner Signatur gibts Links zu dem Thema.
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen
    Der Code funktioniert ja wenn ich ein anderes Suchwort eintippe
    nur bei RLO und Circuit funktioniert es nicht...
    deswegen die Überschrift " ungünstige Zeichenfolgen im Quellcode? "

    wenn ich RLO durch Leuchte und Circuit durch Steckdose ersetze funktioniert es siehe Bild "Leuchte"

    und wenn es nicht ersetzt ist dann funktioniert es nicht siehe Bild "RLO"

    also kann es nur am Suchwort liegen, das kann ich nicht Debuggen weil er sonst sowieso nichts reinschreibt?
    Bilder
    • Leuchte.jpg

      113,68 kB, 661×588, 72 mal angesehen
    • RLO.jpg

      124,88 kB, 670×585, 77 mal angesehen

    Rolle85 schrieb:

    Der Code funktioniert ja wenn ich ein anderes Suchwort eintippe
    nur bei RLO und Circuit funktioniert es nicht...
    deswegen die Überschrift " ungünstige Zeichenfolgen im Quellcode? "


    Jedes Programm agiert nach dem EVA-Prinzip.. Eingabe -> Verarbeitung -> Ausgabe
    Wenn du also RLO eingibst und etwas unerwartetet dabei herauskommt, funktioniert dein Code nicht (so wie du es gerne hättest).

    Wie schaut es aus mit Breakpoints/Debugging/etc. wie es bspw. mrMo vorgeschlagen hat?
    Was kommt dabei raus?

    Rolle85 schrieb:

    also kann es nur am Suchwort liegen, das kann ich nicht Debuggen weil er sonst sowieso nichts reinschreibt?

    Was? Wenn dein Code "stockt", liegt es am Breakpoint, hier kannst du dir die Variablen etc. zum jeweiligen Stand anschauen und Stück für Stück weiter Debuggen. Oder was meinst du?

    LG, Acr0most
    Wenn das Leben wirklich nur aus Nullen und Einsen besteht, dann laufen sicherlich genügen Nullen frei herum. :D
    Signature-Move 8o
    kein Problem mit privaten Konversationen zu Thema XY :thumbup:
    @Acr0most : Es stockt ja nichts?! Es bleiben halt einfach nur "Nullen" stehen anstatt der gesuchten anzahl... :S

    wenn ich den Haltepunkt setze, lässt er mich die Datei auswählen und dann passiert Garnichts mehr siehe Bild.

    *Aber wie gesagt, das Programm funktioniert, abgesehen davon das er die Wörter "CIRCUIT" und "RLO" anscheinend nicht mag.*
    Im Bild "Leuchte" sieht man, das das Programm funktioniert.

    ps: ich glaube wir reden hier MEILENWEIT an einander vorbei :(
    Bilder
    • Haltepunkt.jpg

      211,27 kB, 1.378×661, 68 mal angesehen
    @Rolle85 Wenn der Inhalt XML ist, nutze XML-Tool zur Deserialisierung.
    XmlDocument ist da schon eine gute Adresse.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    LEUTE LEUTE! Total Peinlich!

    Typischer Fall von UZB "User zu Blöd "!

    Erstmal nochmals DANKE an alle hier.

    Ich Depp hab mich soo sehr auf das zu suchende Wort konzentriert, das ich nicht mal den falschen Zusatz (typeofconduction) weg gemacht habe..... Fehler gefunden!

    Aber jetzt kann ich mich auch schon gut mit XML auseinander setzen hehe

    Fall gelöst

    Rolle85 schrieb:

    Fall gelöst
    Dann markiere diesen Deinen Thread als erledigt, Doppelklick oben auf das abgerundete Quadrat neben dem Titel.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!