C# StringWriter类

这个类用于写入和处理字符串数据而不是文件。它是派生自TextWriter类。StringWriter类写入的字符串数据存储到StringBuilder中。

StringWriter类的目的是将操作字符串的结果保存到StringBuilder中。

StringWriter类签名

[SerializableAttribute]  
[ComVisibleAttribute(true)]  
public class StringWriter : TextWriter

C# StringWriter构造函数

构造函数 描述
StringWriter() 它用于初始化StringWriter类的新实例。
StringWriter(IFormatProvider) 它用于使用指定的格式控件初始化StringWriter类的新实例。
StringWriter(StringBuilder) 它用于初始化写入指定StringBuilderStringWriter类的新实例。
StringWriter(StringBuilder,?IFormatProvider) 它用于初始化写入指定的StringBuilderStringWriter类的新实例,并具有指定的格式提供程序。

C# StringWriter属性

属性 描述
Encoding 它用于获取写入输出的编码。
FormatProvider 它用于获取控制格式化的对象。
NewLine 它用于获取或设置当前TextWriter使用的行终止符字符串。

C# StringWriter方法

属性 描述
Close() 它用于关闭当前的StringWriter和底层流。
Dispose() 它用于释放TextWriter对象使用的所有资源。
Equals(Object) 它用于确定指定的对象是否等于当前对象。
Finalize() 它允许对象尝试释放资源并执行其他清理操作。
GetHashCode() 它用作默认散列函数。
GetStringBuilder() 它返回底层的StringBuilder
ToString() 它返回一个包含写入当前StringWriter的字符串。
WriteAsync(String) 它用于将异步字符串写入字符串。
Write(Boolean) 它用于将布尔值的文本表示写入字符串。
Write(String) 它用于将字符串写入当前字符串。
WriteLine(String) 它用于将字符串后跟一个行终止符写入字符串或流。
WriteLineAsync(String) 写一个字符串后跟一个行终止符与当前字符串异步(覆盖TextWriter.WriteLineAsync(String)方法。)

C# StringWriter示例

在下面的程序中,使用StringWriter类将字符串信息写入StringBuilder类。 StringReader类用于读取写入信息到StringBuilder类中。

using System;
using System.IO;
using System.Text;
namespace CSharpProgram
{
    class Program
    {
        static void Main(string[] args)
        {
            string text = "Hello, Welcome to the xuhuhu.com \n" +
                "It is nice site. \n" +
                "It provides IT tutorials";
            // Creating StringBuilder instance  
            StringBuilder sb = new StringBuilder();
            // Passing StringBuilder instance into StringWriter  
            StringWriter writer = new StringWriter(sb);
            // Writing data using StringWriter  
            writer.WriteLine(text);
            writer.Flush();
            // Closing writer connection  
            writer.Close();
            // Creating StringReader instance and passing StringBuilder  
            StringReader reader = new StringReader(sb.ToString());
            // Reading data  
            while (reader.Peek() > -1)
            {
                Console.WriteLine(reader.ReadLine());
            }
        }
    }
}

执行上面示例代码,得到以下结果 -

Hello, Welcome to the xuhuhu.com
It is nice site.
It provides IT tutorials

上一篇: C# BinaryReader类 下一篇: C# StringReader类