尝试在ASP.NET 3.5 VB.NET中向一个编写器写一系列行,但是我收到错误'对象引用未设置为对象的实例。这是代码
Dim sW As StreamWriter, iX As Integer = 0
For iX = 0 To 5
sW.WriteLine("SomeThing") 'Error occurs here
Next
我的目标是在不同的行中写一系列字符串。这似乎很简单,但我没有看到如何设置引用;我在上面宣布两行。 TIA。
答案 0 :(得分:2)
sw未初始化。这是错误的根源。您可以在使用变量之前实例化一个streamwriter。示例:
Dim sw as new StreamWriter("c:\text.txt")
[编辑]根据你的评论,这里有另一个答案:
您可以连接字符串:
Dim string1 as string
Dim string2 as string
Dim string3 as string
string1 = "String1"
string2 = "String2"
string3 = string1 + Environment.NewLine + string2
或使用StringBuilder类:
Dim sb as new StringBuilder()
Dim string3 as string
sb.AppendLine("string1")
sb.AppendLine("string2")
string3 = sb.ToString()
连接多个字符串时需要使用stringbuilder类(我会说超过10个连接)以避免每个连接的内存分配。
答案 1 :(得分:1)
它给出了错误,因为您没有初始化StreamWriter类的新实例。
Dim sW as New StreamWriter
http://msdn.microsoft.com/en-us/library/system.io.streamwriter.aspx
答案 2 :(得分:0)
在第一行中,您只是初始化整数iX
。必须使用
StreamWriter
Dim sW As new StreamWriter(yourFilename)
答案 3 :(得分:0)
试试这个:
Using writer As StreamWriter = New StreamWriter("myfile.txt")
writer.Write("One ")
writer.WriteLine("two 2")
writer.WriteLine("Three")
End Using