Witam chciałem zapytać w czym tkwi błąd, zrobiłem taki zapisz do pliku ale działa on nie do końca tak jak powinien. Ponieważ zapisuje on aktualnie przeglądany rekord ale nie przechodzi do następnego numeru w tablicy i nie zapisuje kolejnych rekordów w pliku. Dodam że zmienna aktualna pozycja jest to aktualnie wyświetlany rekord na formatce a numer jest to liczba wszystkich elementów w tablicy.
Private Sub ZapiszJakoToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ZapiszJakoToolStripMenuItem.Click
Dim myStream As IO.StreamWriter
Dim savefiledialog As New SaveFileDialog
If SaveFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
myStream = New System.IO.StreamWriter(SaveFileDialog1.FileName)
With tablica(aktualna_pozycja)
While aktualna_pozycja <= numer
myStream.WriteLine(TextBox1.Text)
myStream.WriteLine(TextBox2.Text)
myStream.WriteLine(TextBox3.Text)
myStream.WriteLine(MaskedTextBox1.Text)
myStream.WriteLine(MaskedTextBox2.Text)
myStream.WriteLine(TextBox6.Text)
myStream.WriteLine(MaskedTextBox5.Text)
myStream.WriteLine(MaskedTextBox4.Text)
myStream.WriteLine(MaskedTextBox3.Text)
If RadioButton1.Checked = True Then
myStream.WriteLine(RadioButton1.Text)
Else
myStream.WriteLine(RadioButton2.Text)
End If
If RadioButton3.Checked = True Then
myStream.WriteLine(RadioButton3.Text)
If RadioButton4.Checked = True Then
myStream.WriteLine(RadioButton4.Text)
End If
End If
myStream.WriteLine(ComboBox1.SelectedItem)
myStream.WriteLine(ComboBox2.SelectedItem)
myStream.WriteLine(ComboBox3.SelectedItem)
myStream.WriteLine(ComboBox1.SelectedItem)
myStream.WriteLine(ComboBox2.SelectedItem)
myStream.WriteLine(Label14.Text)
myStream.Close() <---------------- jeżeli w tym miejscu zamykam to wyskakuje błąd przy zapisie ze "Cannot write to a closed TextWriter." okej oczywiste ze nie moge zakończyć w tym miejscu ale nie wiem czy pętle musze zmienić jakoś czy co
End While
`myStream.Close() <-------------- jak dam w tym miejscu to znowu zapisuje setki razy dane z tego elementu tablicy i również nie przechodzi do następnego
End With
OpenFileDialog1.FileName = SaveFileDialog1.FileName
End If
End Sub