导出 (0) 打印
全部展开
此文章由机器翻译。 将光标移到文章的句子上,以查看原文。 更多信息。
译文
原文

StringWriter 类

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

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

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

StringWriter 类型公开以下成员。

  名称说明
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETStringWriter()初始化 StringWriter 类的新实例。
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETStringWriter(IFormatProvider)使用指定的格式控制初始化 StringWriter 类的新实例。
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETStringWriter(StringBuilder)初始化写入指定 StringBuilderStringWriter 类的新实例。
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETStringWriter(StringBuilder, IFormatProvider)初始化写入指定 StringBuilder 并具有指定格式提供程序的 StringWriter 类的新实例。
页首

  名称说明
公共属性由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETEncoding获取将输出写入到其中的 Encoding (重写 TextWriter.Encoding。)
公共属性由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETFormatProvider获取控制格式设置的对象。 (继承自 TextWriter。)
公共属性由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETNewLine获取或设置由当前 TextWriter 使用的行结束符字符串。 (继承自 TextWriter。)
页首

  名称说明
公共方法由 XNA Framework 提供支持Close关闭当前的 StringWriter 和基础流。 (重写 TextWriter.Close()。)
公共方法CreateObjRef创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息。 (继承自 MarshalByRefObject。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETDispose()释放由 TextWriter 对象使用的所有资源。 (继承自 TextWriter。)
受保护的方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETDispose(Boolean)释放由 StringWriter 占用的非托管资源,还可以另外再释放托管资源。 (重写 TextWriter.Dispose(Boolean)。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETEquals(Object)确定指定的对象是否等于当前对象。 (继承自 Object。)
受保护的方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETFinalize允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETFlush清理当前编写器的所有缓冲区,使所有缓冲数据写入基础设备。 (继承自 TextWriter。)
公共方法受以下版本支持:适用于 Windows 应用商店应用的 .NETFlushAsync以异步方式清除所有缓冲区的当前编写器,使所有缓冲的数据写入基础设备。 (重写 TextWriter.FlushAsync()。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETGetHashCode作为默认哈希函数。 (继承自 Object。)
公共方法GetLifetimeService检索控制此实例的生存期策略的当前生存期服务对象。 (继承自 MarshalByRefObject。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETGetStringBuilder返回基础 StringBuilder
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETGetType获取当前实例的 Type (继承自 Object。)
公共方法InitializeLifetimeService获取控制此实例的生存期策略的生存期服务对象。 (继承自 MarshalByRefObject。)
受保护的方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETMemberwiseClone()创建当前 Object 的浅表副本。 (继承自 Object。)
受保护的方法MemberwiseClone(Boolean)创建当前 MarshalByRefObject 对象的浅表副本。 (继承自 MarshalByRefObject。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETToString返回包含迄今为止写入到当前 StringWriter 中的字符的字符串。 (重写 Object.ToString()。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWrite(Boolean)Boolean 值的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWrite(Char)将字符串写入一个字符。 (重写 TextWriter.Write(Char)。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWrite(Char[])将字符数组写入该文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWrite(Decimal)将十进制值的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWrite(Double)将 8 字节浮点值的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWrite(Int32)将 4 字节有符号整数的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWrite(Int64)将 8 字节有符号整数的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWrite(Object)通过在对象上调用 ToString 方法将此对象的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWrite(Single)将 4 字节浮点值的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWrite(String)将字符串写入当前字符串。 (重写 TextWriter.Write(String)。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWrite(UInt32)将 4 字节无符号整数的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWrite(UInt64)将 8 字节无符号整数的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持Write(String, Object)使用与 String.Format(String, Object) 方法相同的语义将格式化字符串和新行写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWrite(String, Object[])使用与 String.Format(String, Object[]) 方法相同的语义将格式化字符串和新行写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWrite(Char[], Int32, Int32)将字符串写入字符子的数组。 (重写 TextWriter.Write(Char[], Int32, Int32)。)
公共方法由 XNA Framework 提供支持Write(String, Object, Object)使用与 String.Format(String, Object, Object) 方法相同的语义将格式化字符串和新行写入文本字符串或流。 (继承自 TextWriter。)
公共方法Write(String, Object, Object, Object)使用与 String.Format(String, Object, Object, Object) 方法相同的语义将格式化字符串和新行写入文本字符串或流。 (继承自 TextWriter。)
公共方法受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteAsync(Char)以异步方式的字符串写入一个字符。 (重写 TextWriter.WriteAsync(Char)。)
公共方法受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteAsync(Char[])以异步形式将字符数组写入到下一个字符串或流。 (继承自 TextWriter。)
公共方法受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteAsync(String)异步写入到当前字符串的字符串。 (重写 TextWriter.WriteAsync(String)。)
公共方法受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteAsync(Char[], Int32, Int32)以异步方式的字符串写入字符子的数组。 (重写 TextWriter.WriteAsync(Char[], Int32, Int32)。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLine()将行结束符的字符串写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLine(Boolean)将后面带有行结束符的 Boolean 值的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLine(Char)将后跟行结束符的字符写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLine(Char[])将后跟行结束符的字符数组写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLine(Decimal)将后面带有行结束符的十进制值的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLine(Double)将后跟行结束符的 8 字节浮点值的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLine(Int32)将后跟行结束符的 4 字节有符号整数的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLine(Int64)将后跟行结束符的 8 字节有符号整数的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLine(Object)通过在对象上调用 ToString 方法将后跟行结束符的此对象的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLine(Single)将后跟行结束符的 4 字节浮点值的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLine(String)将后跟行结束符的字符串写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLine(UInt32)将后跟行结束符的 4 字节无符号整数的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLine(UInt64)将后跟行结束符的 8 字节无符号整数的文本表示形式写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持WriteLine(String, Object)使用与 String.Format(String, Object) 方法相同的语义将格式化字符串和新行写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLine(String, Object[])使用与 Format 相同的语义写出格式化的字符串和一个新行。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLine(Char[], Int32, Int32)将后跟行结束符的字符子数组写入文本字符串或流。 (继承自 TextWriter。)
公共方法由 XNA Framework 提供支持WriteLine(String, Object, Object)使用与 String.Format(String, Object, Object) 方法相同的语义将格式化字符串和新行写入文本字符串或流。 (继承自 TextWriter。)
公共方法WriteLine(String, Object, Object, Object)使用与 Format 相同的语义写出格式化的字符串和一个新行。 (继承自 TextWriter。)
公共方法受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLineAsync()将行结束符的字符串异步写入文本字符串或流。 (继承自 TextWriter。)
公共方法受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLineAsync(Char)将写入的字符串以异步方式跟行结束符的字符。 (重写 TextWriter.WriteLineAsync(Char)。)
公共方法受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLineAsync(Char[])将后跟行结束符的字符数组异步写入文本字符串或流。 (继承自 TextWriter。)
公共方法受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLineAsync(String)写入到当前字符串以异步方式跟行结束符字符串。 (重写 TextWriter.WriteLineAsync(String)。)
公共方法受以下版本支持:适用于 Windows 应用商店应用的 .NETWriteLineAsync(Char[], Int32, Int32)将写入的字符串以异步方式跟行结束符的字符子数组。 (重写 TextWriter.WriteLineAsync(Char[], Int32, Int32)。)
页首

  名称说明
受保护的字段由 XNA Framework 提供支持受以下产品支持可移植类库受以下版本支持:适用于 Windows 应用商店应用的 .NETCoreNewLine存储用于此 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.5、4、3.5、3.0、2.0、1.1、1.0

.NET Framework Client Profile

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

可移植类库

受以下版本支持:可移植类库

适用于 Windows 应用商店应用的 .NET

受以下版本支持:Windows 8

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008(不支持服务器核心角色), Windows Server 2008 R2(支持带 SP1 或更高版本的服务器核心角色;不支持 Itanium)

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

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

社区附加资源

添加
显示:
© 2014 Microsoft