次の行を含む入力ファイルを読み取るプログラムを作成しています。
Scott Atchison,200,74
このファイルには、約 30 行の異なるデータが含まれています。ファイルを読み込む方法を知っています。ファイルが読み込まれた後、分割され、計算を行う必要があります (その方法は知っています)。ただし、問題は出力ファイルです。入力ファイルの最後の行しか出力ファイルに取得できません。これは私が今持っているものです:
Public Class BMI
Dim data As String
Dim strName As String
Dim intWeight As Integer
Dim intHeight As Integer
Dim decBMI As Decimal
Private Sub btnInputFile_Click(sender As System.Object, e As System.EventArgs) Handles btnOpenFile.Click
'User chooses a file
OpenFile.ShowDialog()
'Choose a file name into a label
lblFileInput.Text = OpenFile.FileName
Dim inputFile As New IO.StreamReader(lblFileInput.Text)
Do While (inputFile.Peek() > -1)
data = inputFile.ReadLine
Dim fields() As String = data.Split(",")
strName = fields(0)
intWeight = fields(1)
intHeight = fields(2)
txtData.Text = txtData.Text & data & vbNewLine
Loop
FileClose()
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles btnSaveFile.Click
SaveFile.ShowDialog()
lblFileOutput.Text = SaveFile.FileName
Dim output As IO.StreamWriter
output = New IO.StreamWriter(lblFileOutput.Text)
output.WriteLine(data)
End Sub
Private Sub Button1_Click_1(sender As System.Object, e As System.EventArgs) Handles Button1.Click
decBMI = (intWeight * 703 / (intHeight ^ 2))
data = strName & ", " & decBMI
End Sub
クラス終了
30 行すべてが読み取られるまで 1 行書き込みませんか、それとも while ループのように何か不足していますか? どんな助けでも大歓迎です。