Datei eingabe - ausgabe via Schleife
Probleme mit dem Schreiben in eine Datei via Schleife in Visual Studio 2005
Hallo zusammen,
ich versuche in Visual Studio 2005 eine Datei auszulesen...
dies funktioniert ja auch wunderbar...
Nur wenn ich dann für jeden Wert in der Datei, mir diesen Wert via Schleife in eine neue Datei ausgeben will, macht er nur den letzten Wert.
Kann mir jemand helfen wo hier mein Denkfehler ist ???
Imports System.IO
Public Class frm_main
Private Sub cmd_open_file_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmd_open_file.Click
Dim ofc As New OpenFileDialog
ofc.Filter = "Texte (*.txt)|*.txt"
ofc.Title = "Wählen Sie die zu öffnende Datei aus"
If ofc.ShowDialog() = Windows.Forms.DialogResult.OK Then
MsgBox("Es wird geöffnet: " & ofc.FileName)
Else
MsgBox("Es ist ein Fehler aufgetreten")
End If
Dim Inhalt As New FileStream(ofc.FileName, FileMode.Open)
Dim sr As New StreamReader(Inhalt)
Dim zeile2 As String
Do Until sr.Peek() = -1
zeile2 = sr.ReadLine()
Dim fs As New FileStream("output.txt", FileMode.Create)
Dim sw As New StreamWriter(fs)
sw.WriteLine(zeile2 & vbCrLf)
sw.Close()
Loop
sr.Close()
End Sub
End Class
Im oberen Teil öffne ich die Datei normal via "OpenFileDialog"...
das funktioniert ja wie gesagt wunderbar...
Muß ich da die ein oder andere Zeile ein wenig "verrücken" ???
Bin mit Schleifen nicht so ganz "per du"....
Danke
Hallo zusammen,
ich versuche in Visual Studio 2005 eine Datei auszulesen...
dies funktioniert ja auch wunderbar...
Nur wenn ich dann für jeden Wert in der Datei, mir diesen Wert via Schleife in eine neue Datei ausgeben will, macht er nur den letzten Wert.
Kann mir jemand helfen wo hier mein Denkfehler ist ???
Imports System.IO
Public Class frm_main
Private Sub cmd_open_file_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmd_open_file.Click
Dim ofc As New OpenFileDialog
ofc.Filter = "Texte (*.txt)|*.txt"
ofc.Title = "Wählen Sie die zu öffnende Datei aus"
If ofc.ShowDialog() = Windows.Forms.DialogResult.OK Then
MsgBox("Es wird geöffnet: " & ofc.FileName)
Else
MsgBox("Es ist ein Fehler aufgetreten")
End If
Dim Inhalt As New FileStream(ofc.FileName, FileMode.Open)
Dim sr As New StreamReader(Inhalt)
Dim zeile2 As String
Do Until sr.Peek() = -1
zeile2 = sr.ReadLine()
Dim fs As New FileStream("output.txt", FileMode.Create)
Dim sw As New StreamWriter(fs)
sw.WriteLine(zeile2 & vbCrLf)
sw.Close()
Loop
sr.Close()
End Sub
End Class
Im oberen Teil öffne ich die Datei normal via "OpenFileDialog"...
das funktioniert ja wie gesagt wunderbar...
Muß ich da die ein oder andere Zeile ein wenig "verrücken" ???
Bin mit Schleifen nicht so ganz "per du"....
Danke
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 122440
Url: https://administrator.de/forum/datei-eingabe-ausgabe-via-schleife-122440.html
Ausgedruckt am: 09.04.2025 um 21:04 Uhr
2 Kommentare
Neuester Kommentar
Hallo BadFsaadKl!
Da Du in der Zeile
die Datei "output.txt" bei jedem Schleifendurchlauf neu erzeugst, enthält diese natürlich am Ende nur die letzte Zeile - verwende daher "Append" anstelle von "Create" (es geht also auch ohne eine besonders "verrückte" Zeile
) ...
Grüße
bastla
Da Du in der Zeile
Dim fs As New FileStream("output.txt", FileMode.Create)
Grüße
bastla