Vb.net 将数组保存到文件
我一直试图将数组保存到文件中,但我只能创建文本文件,但实际文件中没有显示文本。循环没有按我想要的方式工作。我需要将Cust数组存储到文本文件中Vb.net 将数组保存到文件,vb.net,Vb.net,我一直试图将数组保存到文件中,但我只能创建文本文件,但实际文件中没有显示文本。循环没有按我想要的方式工作。我需要将Cust数组存储到文本文件中 Dim car(4) As Decimal Dim Cust(4) As String 'Declare module-level constants. Const PER_DAY_Integer As Integer = 15 Const PER_MILE_Decimal As Decimal = 0.12D Private Sub CalcB
Dim car(4) As Decimal
Dim Cust(4) As String
'Declare module-level constants.
Const PER_DAY_Integer As Integer = 15
Const PER_MILE_Decimal As Decimal = 0.12D
Private Sub CalcButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CalcButton.Click
'Calculate the rental charges
Cust(0) = NameTextBox.Text
Cust(1) = AddressTextBox.Text
Cust(2) = CityTextBox.Text
Cust(3) = ZipTextBox.Text
Cust(4) = StateTextBox.Text
Try
car(0) = Decimal.Parse(BeginTextBox.Text)
Try
car(1) = Decimal.Parse(EndTextBox.Text)
Try
car(2) = Integer.Parse(DaysTextBox.Text)
'Calculate the number of miles driven and the charges
car(3) = car(1) - car(0)
car(4) = (car(3) * PER_MILE_Decimal + car(2) * PER_DAY_Integer)
'Display the results
TotalTextBox.Text = car(4).ToString("C")
MilesTextBox.Text = car(3).ToString("N1")
Catch ex As Exception
MessageBox.Show("Input Error", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
DaysTextBox.Focus()
End Try
Catch ex As Exception
MessageBox.Show("Input Error", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
EndTextBox.Focus()
End Try
Catch ex As Exception
MessageBox.Show("Input Error", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
BeginTextBox.Focus()
End Try
End Sub
Private Sub ClearButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ClearButton.Click
'Clear the form
AddressTextBox.Clear()
CityTextBox.Clear()
StateTextBox.Clear()
ZipTextBox.Clear()
BeginTextBox.Clear()
EndTextBox.Clear()
DaysTextBox.Clear()
TotalTextBox.Clear()
MilesTextBox.Clear()
With NameTextBox
.Clear()
.Focus()
End With
End Sub
Private Sub ExitButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ExitButton.Click
'End the program
Me.Close()
End Sub
Private Sub PrintButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PrintButton.Click
'Print the form
PrintForm1.PrintAction = Printing.PrintAction.PrintToPreview
PrintForm1.Print()
End Sub
Private Sub readBtn_Click(sender As Object, e As EventArgs) Handles readBtn.Click
End Sub
Private Sub WriteBtn_Click(sender As Object, e As EventArgs) Handles WriteBtn.Click
Dim outFile As IO.StreamWriter
Dim int As Integer = 0
Dim count As Integer = 0
outFile = IO.File.CreateText("Cust.txt")
Do While int < count
outFile.WriteLine(Cust(1)(int))
int += 1
Loop
outFile.Close()
End Sub
Dim car(4)为十进制
Dim Cust(4)作为字符串
'声明模块级常量。
每\u天的常数\u整数为整数=15
每英里常量十进制=0.12D
私有子CalcButton_Click(ByVal sender作为System.Object,ByVal e作为System.EventArgs)处理CalcButton。单击
“计算租金
客户(0)=名称文本框。文本
Cust(1)=AddressTextBox.Text
Cust(2)=CityTextBox.Text
Cust(3)=ZipTextBox.Text
Cust(4)=StateTextBox.Text
尝试
car(0)=Decimal.Parse(BeginTextBox.Text)
尝试
car(1)=Decimal.Parse(EndTextBox.Text)
尝试
car(2)=整数.Parse(DaysTextBox.Text)
'计算行驶里程数和费用
轿厢(3)=轿厢(1)-轿厢(0)
汽车(4)=(汽车(3)*每英里小数+汽车(2)*每天整数)
'显示结果
TotalTextBox.Text=car(4).ToString(“C”)
MilesTextBox.Text=car(3).ToString(“N1”)
特例
显示(“输入错误”,“错误”,MessageBoxButtons.OK,MessageBoxIcon.Error)
DaysTextBox.Focus()
结束尝试
特例
显示(“输入错误”,“错误”,MessageBoxButtons.OK,MessageBoxIcon.Error)
EndTextBox.Focus()
结束尝试
特例
显示(“输入错误”,“错误”,MessageBoxButtons.OK,MessageBoxIcon.Error)
BeginTextBox.Focus()
结束尝试
端接头
私有子ClearButton_Click(ByVal发送者作为System.Object,ByVal e作为System.EventArgs)处理ClearButton。单击
“清理表格
AddressTextBox.Clear()
CityTextBox.Clear()
StateTextBox.Clear()
ZipTextBox.Clear()
BeginTextBox.Clear()
EndTextBox.Clear()
DaysTextBox.Clear()
TotalTextBox.Clear()
MilesTextBox.Clear()
使用NameTextBox
.Clear()
.Focus()
以
端接头
私有子ExitButton_Click(ByVal sender作为System.Object,ByVal e作为System.EventArgs)处理ExitButton。单击
"结束节目"
我
端接头
Private Sub PrintButton_Click(ByVal sender作为System.Object,ByVal e作为System.EventArgs)处理PrintButton。单击
'打印表单
PrintForm1.PrintAction=Printing.PrintAction.PrintToPreview
PrintForm1.Print()
端接头
私有子readBtn\u单击(发送者作为对象,e作为事件参数)处理readBtn。单击
端接头
私有子WriteBtn\u单击(发送方作为对象,e作为事件参数)处理WriteBtn。单击
将输出文件变暗为IO.StreamWriter
整数形式的整数=0
Dim计数为整数=0
outFile=IO.File.CreateText(“Cust.txt”)
当int
End Class当您调试时,有人问您调试失败的地方,您显然没有费心调试,或者您已经看到了问题。从您的代码中查看:
Dim int As Integer = 0
Dim count As Integer = 0
outFile = IO.File.CreateText("Cust.txt")
Do While int < count
outFile.WriteLine(Cust(1)(int))
int += 1
Loop
当然,您不应该只使用文件名,而应该使用文件路径,但这是另一个问题。调试时,具体在哪里失败?其他代码都在做什么?你到底为什么有这么多嵌套的
Try
块?这是一个我曾经做过的老项目。这些块用于数据验证,工作正常。它没有失败,我只是得到一个空白的文本文件,我需要它来将数组信息保存到文本文件中。Cust(1)(int)
也没有做他认为它能做的事情,但我在第一次尝试后就放弃了。我从一位教授那里收到了这个项目,我们应该将数据存储到文件中…@DourHighArch,确实如此。如果使用File.writeAllines
,希望这不会成为问题。@user2857087,这正是File.writeAllines
所做的。给猫剥皮通常有多种方法File.writeAllines
获取字符串或其他对象的列表并将它们写入文件,每行一个。它是一个单行程序,用于打开文件、循环列表、写入每个项目,然后为您关闭文件。如果您需要在两个步骤之间的某个地方做一些不寻常的事情,您只需要自己执行每个步骤。这个错误是什么意思?“进程无法访问文件‘E:\RentalCar-arrays\RentalCar\bin\Debug\Cust.txt’,因为另一个进程正在使用该文件。”
IO.File.WriteAllLines("Cust.txt", Cust)