Datei auslesen und je nach Inhalt gesondert ausgeben

  • ASP

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von mrMo.

    Datei auslesen und je nach Inhalt gesondert ausgeben

    Hallo zusammen,

    ich hab das Problem, dass ich eine Datei jeden Monat erhalte dessen Aufbau jedoch nicht den Anforderungen entsprechen die ich brauche, um die Daten ohne weiteres in mein System zu bekommen.

    Aufbau der Datei:

    3;12345678;xxx;xxx;Betrieb;01.12.2017 05:45:22;USB Stick;Herein;RFID;;;;
    3;12345678;xxx;xxx;Betrieb;01.12.2017 15:03:21;USB Stick;Hinaus;RFID;;;;
    ---------------------------------------------------------------------------------------------
    Bei den Herein Buchungen brauche ich diesen Satzaufbau

    XXTTMMJJ XXXXX17120105452201;XX;XX;12345678

    X steht für festen Wert
    ----------------------------------------------------------------------------------------------
    Bei den Heraus Buchungen brauche ich diesen Satzaufbau

    XXTTMMJJ XXXXX17120115032100;XX;XX;12345678

    X steht für festen Wert

    der WERT TTMMJJ wäre das aktuelle Systemdatum..

    Vielleicht hat ja jemand eine Idee wie ich das hinbekommen kann...

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

    Beim ; splitten und dann wieder nach Bedarf zusammen setzen. Kriegst beim Splitten ja nen Array zurück.
    "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
    Schau dir das mal an ... äähm zum 300 Beitrag

    VB.NET-Quellcode

    1. Option Strict On
    2. Option Explicit On
    3. Public Module Module1
    4. Public Sub Main()
    5. Dim Str1() As String = "3;12345678;xxx;xxx;Betrieb;01.12.2017 05:45:22;USB Stick;Herein;RFID;;;;".Split(New Char() {";"c}, StringSplitOptions.RemoveEmptyEntries)
    6. Dim Str2() As String = "3;12345678;xxx;xxx;Betrieb;01.12.2017 15:03:21;USB Stick;Hinaus;RFID;;;;".Split(New Char() {";"c}, StringSplitOptions.RemoveEmptyEntries)
    7. Dim str()() As String = {Str1, Str2}
    8. Dim result As New List(Of String)
    9. For Each s() As String In str
    10. Dim FestenWert1 As String = "XX"
    11. Dim FestenWert2 As String = "XXXXX"
    12. Dim SysDate As String = Date.Now.ToString("ddMMyy") 'Eventuell Kultur beachten
    13. Dim Tag As String = DateTime.Parse(s(5)).ToString("yyMMdd")
    14. Dim Zeit As String = DateTime.Parse(s(5)).ToString("HHmmss")
    15. Dim tmp As String = String.Format("{0}{1} {2}{3}{4}{5}{6}{0}{6}{0}{6}{7}", _
    16. FestenWert1, _
    17. SysDate, _
    18. FestenWert2, _
    19. Tag, _
    20. Zeit, _
    21. If(s(7) = "Herein", "01", "00"), _
    22. ";", _
    23. s(1))
    24. result.Add(tmp)
    25. Next
    26. For Each r As String In result
    27. Console.WriteLine(r)
    28. Next
    29. Console.ReadLine()
    30. End Sub
    31. End Module


    Edit: Jetzt seh ich gerade, dass es vb script ist. Nun ja, ist wahrscheinlich sehr ähnlich.

    Freundliche Grüsse

    exc-jdbi

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „exc-jdbi“ ()

    Ich habe werder von ASP noch von VBS ne Ahnung. Musst wohl doch selber googlen. Aber mal ehrlich, das ist jetzt kein Hexenwerk.

    Suchvorschlag: Strings Splitten VBS
    "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