Hallo,
ich habe ein Programm geschrieben, dass Log-Dateien einliest und bestimmte Zeilen daraus rauskopkiert.
Leider überschneiden sich die Log-Dateien, sodass einige Einträge doppelt vorkommen können.
Die Überprüfung auf die Doppelten Einträge in der Zieldatei habe ich mithilfe eines Powershellaufrufs innerhalb des Programms gelöst.
Beim Ersten einlesen einer Log-Datei klappt alles wunderbar.
Das Problem ist der 2. Durchlauf! Die Ausgabe in die Zieldatei sieht wiefolgt aus:
Hier ist mein Programm:
Ich weiß nicht wann der Fehler passiert und warum die Zeichen ausgegeben werden.
Vielen Dank für eure Hilfe
Viele Grüße D
DenSe
ich habe ein Programm geschrieben, dass Log-Dateien einliest und bestimmte Zeilen daraus rauskopkiert.
Leider überschneiden sich die Log-Dateien, sodass einige Einträge doppelt vorkommen können.
Die Überprüfung auf die Doppelten Einträge in der Zieldatei habe ich mithilfe eines Powershellaufrufs innerhalb des Programms gelöst.
Beim Ersten einlesen einer Log-Datei klappt alles wunderbar.
Das Problem ist der 2. Durchlauf! Die Ausgabe in die Zieldatei sieht wiefolgt aus:
〲㘱ㄭⴲ㜰ㄠ㨳㤰㌺‵㈷㌰ⴠ†慃摲渠浵敢㩲㈠㘰㠰㈷㈵㤰� �〲㘱ㄭⴲ㜰ㄠ㨳㤰㌺‶㈶㠱ⴠ†敓癲捩㩥䘺
Hier ist mein Programm:
Code:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Try
If ofd.ShowDialog() = Windows.Forms.DialogResult.OK Then
opfad = ofd.FileName
End If
Catch ex As Exception
End Try
Try
If sfd.ShowDialog() = Windows.Forms.DialogResult.OK Then
spfad = sfd.FileName
End If
Catch ex As Exception
End Try
Dim reader As New StreamReader(opfad)
Dim writer As New StreamWriter(spfad, True)
Do
zeile = reader.ReadLine()
If zeile IsNot Nothing Then
datum = zeile.Substring(0, 10)
uhrzeit = zeile.Substring(11, 8)
code = zeile.Substring(20, 4)
If (zeile.Contains("FindTerminalForRelease") Or zeile.Contains("Card number")) Then
nachricht = datum & " " & uhrzeit & " " & code & " - "
msg = Microsoft.VisualBasic.Mid(zeile, 28, 100)
writer.WriteLine(nachricht & " " & msg)
End If
End If
Loop Until zeile Is Nothing
writer.Close()
Shell("powershell -noexit $temp = get-content " & spfad & " | sort -unique" & vbCrLf & "$temp | out-file '" & spfad & "'")
MsgBox("Text-Datei erfolgreich erstellt!")
End Sub
Ich weiß nicht wann der Fehler passiert und warum die Zeichen ausgegeben werden.
Vielen Dank für eure Hilfe
Viele Grüße D
DenSe