您的位置:首页 > 编程语言 > VB

VB.NET中应用 StringWriter

2007-01-07 14:17 363 查看
StringWriter 位于 System.IO 名称空间下。StringWriter 也可以代替String 类 来完成 字符串 拼接的 相关操作,效率较高。

一个简单的使用例子如下:


        Dim swA As New System.IO.StringWriter


        Dim arrStr() As String = {"Northsnow", "塞北的雪", "csdn", "中国最大的开发者网络", "http://blog.csdn.net/precipitant"}


        swA.WriteLine(arrStr(0))


        swA.WriteLine(arrStr(1))


        swA.WriteLine(String.Format("{0}-{1}-{2}", arrStr(2), arrStr(3), arrStr(4)))


        Me.TextBox1.AppendText(Environment.NewLine)


        Me.TextBox1.AppendText(swA.ToString)


        Me.TextBox1.AppendText(Environment.NewLine)

  此程序的输出结果为:

Northsnow
塞北的雪
csdn-中国最大的开发者网络-http://blog.csdn.net/precipitant

大家一定注意到了 本例中用的是 WriteLine 方法,其实
swA.WriteLine("Northsnow")
方法相当于
swA.Write("Northsnow")
swA.Write(swA.NewLine)

另外还可以将 信息写入 到 StringBuilder,一个叫完整的例子如下:


Dim sbA As New System.Text.StringBuilder


        sbA.AppendLine("这是一个将 StringWriter 写入到 StringBuilder的例子:")


        '这个StringWriter的数据写到指定的 StringBuilder中


        Dim swA As New System.IO.StringWriter(sbA)


        Dim arrStr() As String = {"Northsnow", "塞北的雪", "csdn", "中国最大的开发者网络", "http://blog.csdn.net/precipitant"}


        swA.WriteLine(arrStr(0))


        swA.WriteLine(arrStr(1))


        swA.WriteLine(String.Format("{0}-{1}-{2}", arrStr(2), arrStr(3), arrStr(4)))


        Me.TextBox1.AppendText(Environment.NewLine)


        Me.TextBox1.AppendText(swA.ToString)


        Me.TextBox1.AppendText(Environment.NewLine)




        '可以通过StringWriter 的 GetStringBuilder 方法返回一个 StringBuilder


        Dim sbB As System.Text.StringBuilder = swA.GetStringBuilder()


        sbB.AppendLine("在返回的 StringBuilder 中添加一行 ")


        Me.TextBox1.AppendText(Environment.NewLine)


        Me.TextBox1.AppendText(sbB.ToString)




        swA.Close()  '大家注意,此处将 StringWriter 关闭了,但是 后面依然可以用 StringBuilder




        sbA.AppendLine("在 StringBuilder 中 新添加一行")


        Me.TextBox1.AppendText(sbA.ToString)

 

此例子返回的结果为:

这是一个将 StringWriter 写入到 StringBuilder的例子:
Northsnow
塞北的雪
csdn-中国最大的开发者网络-http://blog.csdn.net/precipitant

这是一个将 StringWriter 写入到 StringBuilder的例子:
Northsnow
塞北的雪
csdn-中国最大的开发者网络-http://blog.csdn.net/precipitant
在返回的 StringBuilder 中添加一行
这是一个将 StringWriter 写入到 StringBuilder的例子:
Northsnow
塞北的雪
csdn-中国最大的开发者网络-http://blog.csdn.net/precipitant
在返回的 StringBuilder 中添加一行
在 StringBuilder 中 新添加一行

细心的朋友可能已经发现。sbA  和 sbB两个StringBuilder 一样了。也就是 sbA和sbB互相影响。对其中一个操作,另一个也跟着变。这是怎么回事呢?

其实此时他们是一个引用。也就是通过 GetStringBuilder返回的 StringBuilder 对象 其实就是对原来的 StringBuilder 对象的一个引用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  vb.net string 网络