信息
您所需的主题如下所示。但此主题未包含在此库中。

StringWriter 类

实现一个用于将信息写入字符串的 TextWriter 该信息存储在基础 StringBuilder 中。

命名空间:  System.IO
程序集:  mscorlib(在 mscorlib.dll 中)

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

StringWriter 类型公开以下成员。

  名称说明
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifStringWriter()初始化 StringWriter 类的新实例。
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifStringWriter(IFormatProvider)使用指定的格式控制初始化 StringWriter 类的新实例。
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifStringWriter(StringBuilder)初始化写入指定 StringBuilderStringWriter 类的新实例。
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifStringWriter(StringBuilder, IFormatProvider)初始化写入指定 StringBuilder 并具有指定格式提供程序的 StringWriter 类的新实例。
页首

  名称说明
公共属性由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifEncoding获取将输出写入到其中的 Encoding (重写 TextWriter.Encoding。)
公共属性由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifFormatProvider获取控制格式设置的对象。 (继承自 TextWriter。)
公共属性由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifNewLine获取或设置由当前 TextWriter 使用的行结束符字符串。 (继承自 TextWriter。)
页首

  名称说明
公共方法由 XNA Framework 提供支持Close关闭当前的 StringWriter 和基础流。 (重写 TextWriter.Close()。)
公共方法CreateObjRef创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息。 (继承自 MarshalByRefObject。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifDispose()释放由 TextWriter 对象占用的所有资源。 (继承自 TextWriter。)
受保护的方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifDispose(Boolean)释放由 StringWriter 占用的非托管资源,还可以另外再释放托管资源。 (重写 TextWriter.Dispose(Boolean)。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifEquals(Object)确定指定的 Object 是否等于当前的 Object (继承自 Object。)
受保护的方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifFinalize允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifFlush清理当前编写器的所有缓冲区,使所有缓冲数据写入基础设备。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifGetHashCode用作特定类型的哈希函数。 (继承自 Object。)
公共方法GetLifetimeService检索控制此实例的生存期策略的当前生存期服务对象。 (继承自 MarshalByRefObject。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifGetStringBuilder返回基础 StringBuilder
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifGetType获取当前实例的 Type (继承自 Object。)
公共方法InitializeLifetimeService获取控制此实例的生存期策略的生存期服务对象。 (继承自 MarshalByRefObject。)
受保护的方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifMemberwiseClone()创建当前 Object 的浅表副本。 (继承自 Object。)
受保护的方法MemberwiseClone(Boolean)创建当前 MarshalByRefObject 对象的浅表副本。 (继承自 MarshalByRefObject。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifToString返回包含迄今为止写入到当前 StringWriter 中的字符的字符串。 (重写 Object.ToString()。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWrite(Boolean)Boolean 值的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWrite(Char)将一个字符写入到 StringWriter 的此实例中。 (重写 TextWriter.Write(Char)。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWrite(Char[])将字符数组写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWrite(Decimal)将十进制值的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWrite(Double)将 8 字节浮点值的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWrite(Int32)将 4 字节带符号整数的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWrite(Int64)将 8 字节带符号整数的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWrite(Object)通过在对象上调用 ToString 将此对象的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWrite(Single)将 4 字节浮点值的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWrite(String)将字符串写入到 StringWriter 的此实例中。 (重写 TextWriter.Write(String)。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWrite(UInt32)将 4 字节无符号整数的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWrite(UInt64)将 8 字节无符号整数的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持Write(String, Object)使用与 String.Format 相同的语义写出格式化的字符串。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWrite(String, Object[])使用与 String.Format 相同的语义写出格式化的字符串。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWrite(Char[], Int32, Int32)将字符数组的指定区域写入到 StringWriter 的此实例中。 (重写 TextWriter.Write(Char[], Int32, Int32)。)
公共方法由 XNA Framework 提供支持Write(String, Object, Object)使用与 String.Format 相同的语义写出格式化的字符串。 (继承自 TextWriter。)
公共方法Write(String, Object, Object, Object)使用与 String.Format 相同的语义写出格式化的字符串。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWriteLine()将行结束符写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWriteLine(Boolean)将后跟行结束符的 Boolean 的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWriteLine(Char)将后跟行结束符的字符写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWriteLine(Char[])将后跟行结束符的字符数组写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWriteLine(Decimal)将后面带有行结束符的十进制值的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWriteLine(Double)将后跟行结束符的 8 字节浮点值的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWriteLine(Int32)将后跟行结束符的 4 字节带符号整数的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWriteLine(Int64)将后跟行结束符的 8 字节带符号整数的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWriteLine(Object)通过在对象上调用 ToString 将后跟行结束符的此对象的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWriteLine(Single)将后跟行结束符的 4 字节浮点值的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWriteLine(String)将后跟行结束符的字符串写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWriteLine(UInt32)将后跟行结束符的 4 字节无符号整数的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWriteLine(UInt64)将后跟行结束符的 8 字节无符号整数的文本表示形式写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持WriteLine(String, Object)使用与 Format 相同的语义写出格式化的字符串和一个新行。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWriteLine(String, Object[])使用与 Format 相同的语义写出格式化的字符串和一个新行。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifWriteLine(Char[], Int32, Int32)将后跟行结束符的字符子数组写入文本流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持WriteLine(String, Object, Object)使用与 Format 相同的语义写出格式化的字符串和一个新行。 (继承自 TextWriter。)
公共方法WriteLine(String, Object, Object, Object)使用与 Format 相同的语义写出格式化的字符串和一个新行。 (继承自 TextWriter。)
页首

  名称说明
受保护的字段由 XNA Framework 提供支持hs9kt2e9.PortableClassLibrary(zh-cn,VS.100).gifCoreNewLine存储用于此 TextWriter 的换行符。 (继承自 TextWriter。)
页首

下表列出了其他典型或相关的 I/O 任务的示例。

若要执行此操作...

请参见本主题中的示例...

创建文本文件。

如何:向文件写入文本

写入文本文件。

如何:向文件写入文本

读取文本文件。

如何:从文件读取文本

向文件中追加文本。

如何:打开并追加到日志文件

File.AppendText

FileInfo.AppendText

获取文件大小。

FileInfo.Length

获取文件特性。

File.GetAttributes

设置文件特性。

File.SetAttributes

确定文件是否存在。

File.Exists

读取二进制文件。

如何:对新建的数据文件进行读取和写入

写入二进制文件。

如何:对新建的数据文件进行读取和写入

下面的代码示例阐释了如何用一组双倍间距的句子创建一个连续的段落,然后将该段落重新转换为原来的文本。


using System;
using System.IO;

class StringRW
{
    static void Main()
    {
        string textReaderText = "TextReader is the abstract base " +
            "class of StreamReader and StringReader, which read " +
            "characters from streams and strings, respectively.\n\n" +

            "Create an instance of TextReader to open a text file " +
            "for reading a specified range of characters, or to " +
            "create a reader based on an existing stream.\n\n" +

            "You can also use an instance of TextReader to read " +
            "text from a custom backing store using the same " +
            "APIs you would use for a string or a stream.\n\n";

        Console.WriteLine("Original text:\n\n{0}", textReaderText);

        // From textReaderText, create a continuous paragraph 
        // with two spaces between each sentence.
        string aLine, aParagraph = null;
        StringReader strReader = new StringReader(textReaderText);
        while(true)
        {
            aLine = strReader.ReadLine();
            if(aLine != null)
            {
                aParagraph = aParagraph + aLine + " ";
            }
            else
            {
                aParagraph = aParagraph + "\n";
                break;
            }
        }
        Console.WriteLine("Modified text:\n\n{0}", aParagraph);

        // Re-create textReaderText from aParagraph.
        int intCharacter;
        char convertedCharacter;
        StringWriter strWriter = new StringWriter();
        strReader = new StringReader(aParagraph);
        while(true)
        {
            intCharacter = strReader.Read();

            // Check for the end of the string 
            // before converting to a character.
            if(intCharacter == -1) break;

            convertedCharacter = Convert.ToChar(intCharacter);
            if(convertedCharacter == '.')
            {
                strWriter.Write(".\n\n");

                // Bypass the spaces between sentences.
                strReader.Read();
                strReader.Read();
            }
            else
            {
                strWriter.Write(convertedCharacter);
            }
        }
        Console.WriteLine("\nOriginal text:\n\n{0}", 
            strWriter.ToString());
    }
}


.NET Framework

受以下版本支持:4、3.5、3.0、2.0、1.1、1.0

.NET Framework Client Profile

受以下版本支持:4、3.5 SP1

受以下版本支持:

Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2

.NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

社区附加资源

显示:
© 2014 Microsoft