这个类用于写入和处理字符串数据而不是文件。它是派生自TextWriter类。StringWriter类写入的字符串数据存储到StringBuilder中。
StringWriter类的目的是将操作字符串的结果保存到StringBuilder中。
StringWriter类签名
[SerializableAttribute]
[ComVisibleAttribute(true)]
public class StringWriter : TextWriter
C# StringWriter构造函数
| 构造函数 | 描述 |
|---|---|
| StringWriter() | 它用于初始化StringWriter类的新实例。 |
| StringWriter(IFormatProvider) | 它用于使用指定的格式控件初始化StringWriter类的新实例。 |
| StringWriter(StringBuilder) | 它用于初始化写入指定StringBuilder的StringWriter类的新实例。 |
| StringWriter(StringBuilder,?IFormatProvider) | 它用于初始化写入指定的StringBuilder的StringWriter类的新实例,并具有指定的格式提供程序。 |
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类
