StringWriter Class
Implements a TextWriter for writing information to a string. The information is stored in an underlying StringBuilder.
Namespace: System.IO
Assembly: mscorlib (in mscorlib.dll)
The StringWriter type exposes the following members.
| Name | Description | |
|---|---|---|
![]() ![]() ![]() ![]() | StringWriter() | Initializes a new instance of the StringWriter class. |
![]() ![]() ![]() ![]() | StringWriter(IFormatProvider) | Initializes a new instance of the StringWriter class with the specified format control. |
![]() ![]() ![]() ![]() | StringWriter(StringBuilder) | Initializes a new instance of the StringWriter class that writes to the specified StringBuilder. |
![]() ![]() ![]() ![]() | StringWriter(StringBuilder, IFormatProvider) | Initializes a new instance of the StringWriter class that writes to the specified StringBuilder and has the specified format provider. |
| Name | Description | |
|---|---|---|
![]() ![]() ![]() ![]() | Encoding | Gets the Encoding in which the output is written. (Overrides TextWriter.Encoding.) |
![]() ![]() ![]() ![]() | FormatProvider | Gets an object that controls formatting. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | NewLine | Gets or sets the line terminator string used by the current TextWriter. (Inherited from TextWriter.) |
| Name | Description | |
|---|---|---|
![]() ![]() | Close | Closes the current StringWriter and the underlying stream. (Overrides TextWriter.Close().) |
![]() | CreateObjRef | Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object. (Inherited from MarshalByRefObject.) |
![]() ![]() ![]() ![]() | Dispose() | Releases all resources used by the TextWriter object. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | Dispose(Boolean) | Releases the unmanaged resources used by the StringWriter and optionally releases the managed resources. (Overrides TextWriter.Dispose(Boolean).) |
![]() ![]() ![]() ![]() | Equals(Object) | Determines whether the specified object is equal to the current object. (Inherited from Object.) |
![]() ![]() ![]() ![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() ![]() ![]() ![]() | Flush | Clears all buffers for the current writer and causes any buffered data to be written to the underlying device. (Inherited from TextWriter.) |
![]() ![]() | FlushAsync | Asynchronously clears all buffers for the current writer and causes any buffered data to be written to the underlying device. (Overrides TextWriter.FlushAsync().) |
![]() ![]() ![]() ![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetLifetimeService | Retrieves the current lifetime service object that controls the lifetime policy for this instance. (Inherited from MarshalByRefObject.) |
![]() ![]() ![]() ![]() | GetStringBuilder | Returns the underlying StringBuilder. |
![]() ![]() ![]() ![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | InitializeLifetimeService | Obtains a lifetime service object to control the lifetime policy for this instance. (Inherited from MarshalByRefObject.) |
![]() ![]() ![]() ![]() | MemberwiseClone() | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | MemberwiseClone(Boolean) | Creates a shallow copy of the current MarshalByRefObject object. (Inherited from MarshalByRefObject.) |
![]() ![]() ![]() ![]() | ToString | Returns a string containing the characters written to the current StringWriter so far. (Overrides Object.ToString().) |
![]() ![]() ![]() ![]() | Write(Boolean) | Writes the text representation of a Boolean value to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | Write(Char) | Writes a character to the string. (Overrides TextWriter.Write(Char).) |
![]() ![]() ![]() ![]() | Write(Char[]) | Writes a character array to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | Write(Decimal) | Writes the text representation of a decimal value to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | Write(Double) | Writes the text representation of an 8-byte floating-point value to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | Write(Int32) | Writes the text representation of a 4-byte signed integer to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | Write(Int64) | Writes the text representation of an 8-byte signed integer to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | Write(Object) | Writes the text representation of an object to the text string or stream by calling the ToString method on that object. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | Write(Single) | Writes the text representation of a 4-byte floating-point value to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | Write(String) | Writes a string to the current string. (Overrides TextWriter.Write(String).) |
![]() ![]() ![]() ![]() | Write(UInt32) | Writes the text representation of a 4-byte unsigned integer to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | Write(UInt64) | Writes the text representation of an 8-byte unsigned integer to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() | Write(String, Object) | Writes a formatted string to the text string or stream, using the same semantics as the String.Format(String, Object) method. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | Write(String, Object[]) | Writes a formatted string to the text string or stream, using the same semantics as the String.Format(String, Object[]) method. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | Write(Char[], Int32, Int32) | Writes a subarray of characters to the string. (Overrides TextWriter.Write(Char[], Int32, Int32).) |
![]() ![]() | Write(String, Object, Object) | Writes a formatted string to the text string or stream, using the same semantics as the String.Format(String, Object, Object) method. (Inherited from TextWriter.) |
![]() | Write(String, Object, Object, Object) | Writes a formatted string to the text string or stream, using the same semantics as the String.Format(String, Object, Object, Object) method. (Inherited from TextWriter.) |
![]() ![]() | WriteAsync(Char) | Writes a character to the string asynchronously. (Overrides TextWriter.WriteAsync(Char).) |
![]() ![]() | WriteAsync(Char[]) | Writes a character array to the text string or stream asynchronously. (Inherited from TextWriter.) |
![]() ![]() | WriteAsync(String) | Writes a string to the current string asynchronously. (Overrides TextWriter.WriteAsync(String).) |
![]() ![]() | WriteAsync(Char[], Int32, Int32) | Writes a subarray of characters to the string asynchronously. (Overrides TextWriter.WriteAsync(Char[], Int32, Int32).) |
![]() ![]() ![]() ![]() | WriteLine() | Writes a line terminator to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | WriteLine(Boolean) | Writes the text representation of a Boolean value followed by a line terminator to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | WriteLine(Char) | Writes a character followed by a line terminator to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | WriteLine(Char[]) | Writes an array of characters followed by a line terminator to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | WriteLine(Decimal) | Writes the text representation of a decimal value followed by a line terminator to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | WriteLine(Double) | Writes the text representation of a 8-byte floating-point value followed by a line terminator to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | WriteLine(Int32) | Writes the text representation of a 4-byte signed integer followed by a line terminator to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | WriteLine(Int64) | Writes the text representation of an 8-byte signed integer followed by a line terminator to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | WriteLine(Object) | Writes the text representation of an object by calling the ToString method on that object, followed by a line terminator to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | WriteLine(Single) | Writes the text representation of a 4-byte floating-point value followed by a line terminator to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | WriteLine(String) | Writes a string followed by a line terminator to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | WriteLine(UInt32) | Writes the text representation of a 4-byte unsigned integer followed by a line terminator to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | WriteLine(UInt64) | Writes the text representation of an 8-byte unsigned integer followed by a line terminator to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() | WriteLine(String, Object) | Writes a formatted string and a new line to the text string or stream, using the same semantics as the String.Format(String, Object) method. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | WriteLine(String, Object[]) | Writes out a formatted string and a new line, using the same semantics as Format. (Inherited from TextWriter.) |
![]() ![]() ![]() ![]() | WriteLine(Char[], Int32, Int32) | Writes a subarray of characters followed by a line terminator to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() | WriteLine(String, Object, Object) | Writes a formatted string and a new line to the text string or stream, using the same semantics as the String.Format(String, Object, Object) method. (Inherited from TextWriter.) |
![]() | WriteLine(String, Object, Object, Object) | Writes out a formatted string and a new line, using the same semantics as Format. (Inherited from TextWriter.) |
![]() ![]() | WriteLineAsync() | Writes a line terminator asynchronously to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() | WriteLineAsync(Char) | Writes a character followed by a line terminator asynchronously to the string. (Overrides TextWriter.WriteLineAsync(Char).) |
![]() ![]() | WriteLineAsync(Char[]) | Writes an array of characters followed by a line terminator asynchronously to the text string or stream. (Inherited from TextWriter.) |
![]() ![]() | WriteLineAsync(String) | Writes a string followed by a line terminator asynchronously to the current string. (Overrides TextWriter.WriteLineAsync(String).) |
![]() ![]() | WriteLineAsync(Char[], Int32, Int32) | Writes a subarray of characters followed by a line terminator asynchronously to the string. (Overrides TextWriter.WriteLineAsync(Char[], Int32, Int32).) |
| Name | Description | |
|---|---|---|
![]() ![]() ![]() ![]() | CoreNewLine | Stores the newline characters used for this TextWriter. (Inherited from TextWriter.) |
The following table lists examples of other typical or related I/O tasks.
To do this... | See the example in this topic... |
|---|---|
Create a text file. | |
Write to a text file. | |
Read from a text file. | |
Append text to a file. | |
Get the size of a file. | |
Get the attributes of a file. | |
Set the attributes of a file. | |
Determine if a file exists. | |
Read from a binary file. | |
Write to a binary file. |
The following code example demonstrates the creation of a continuous paragraph from a group of double-spaced sentences, and then the conversion of the paragraph back to the original text.
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()); } }
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.






