嗨我有一个文本框,上面显示了一堆名字。名称位于名为“strNames”的字符串中。我正在尝试使用保存按钮将名称保存为预定位置的txt文件。这是保存按钮的代码。它创建文件但没有名称列表。请帮忙!
答案 0 :(得分:1)
鉴于你的strNames
是一个字符串数组,那么你可以使用File.WriteAllLines,不需要在这里使用StreamWriter
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
File.WriteAllLines("C:\Test.txt", strNames)
End Sub
如果您在将输入数组写入文件之前不需要对输入数组进行特殊处理,而不是围绕数组字符串进行预处理,并且您不需要封装StreamWriter,那么这对StreamWriter方法有优势在Using语句中确保正确释放系统资源
答案 1 :(得分:0)
您需要写入该文件,然后在StreamWriter上调用Close()
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim w As IO.StreamWriter
w = New IO.StreamWriter("C:\Test.txt")
' strNames is an array so you have to iterate through the array and write each element
For Each item As String In strNames
w.WriteLine(item)
Next
w.Close()
End Sub
答案 2 :(得分:0)
确保在访问和写入文件期间发生任何异常时使用Try / Catch块。 此外,当您使用诸如“文件”之类的资源时,请确保正确处置连接到资源的对象。使用“使用”语句是一种非常安全的方法。以下是两者的实例。
Sub WriteToFile()
Dim strNames As String() = {"John", "Jimmy", "Joe"}
Try
Using oWriter As New IO.StreamWriter("C:\testFile.txt")
For Each strName As String In strNames
oWriter.WriteLine(strName)
Next
End Using
Catch ex As Exception
HandleException(ex)
End Try
End Sub