C# StringWriter Class

This class is used to write and deal with string data rather than files. It is derived class of TextWriter class. The string data written by StringWriter class is stored into StringBuilder.

The purpose of this class is to manipulate string and save result into the StringBuilder.

Class Signature

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

Constructors

Constructors Description
StringWriter() It is used to initialize a new instance of the StringWriter class.
StringWriter(IFormatProvider) It is used to initialize a new instance of the StringWriter class with the specified format control.
StringWriter(StringBuilder) It is used to initialize a new instance of the StringWriter class that writes to the specified StringBuilder.
StringWriter(StringBuilder,?IFormatProvider) It is used to initialize a new instance of the StringWriter class that writes to the specified StringBuilder and has the specified format provider.

C# StringWriter Properties

Property Description
Encoding It is used to get the Encoding in which the output is written.
FormatProvider It is used to get an object that controls formatting.
NewLine It is used to get or set the line terminator string used by the current TextWriter.

C# StringWriter Methods

Methods Description
Close() It is used to close the current StringWriter and the underlying stream.
Dispose() It is used to release all resources used by the TextWriter object.
Equals(Object) It is used to determine whether the specified object is equal to the current object or not.
Finalize() It allows an object to try to free resources and perform other cleanup operations.
GetHashCode() It is used to serve as the default hash function.
GetStringBuilder() It returns the underlying StringBuilder.
ToString() It returns a string containing the characters written to the current StringWriter.
WriteAsync(String) It is used to write a string to the current string asynchronously.
Write(Boolean) It is used to write the text representation of a Boolean value to the string.
Write(String) It is used to write a string to the current string.
WriteLine(String) It is used to write a string followed by a line terminator to the string or stream.
WriteLineAsync(String) Writes a string followed by a line terminator asynchronously to the current string.(Overrides TextWriter.WriteLineAsync(String).)
Example

In the following program, we are using StringWriter class to write string information to the StringBuilder class. The StringReader class is used to read written information to the StringBuilder.

snippet
using System;
using System.IO;
using System.Text;
namespace CSharpProgram
{
    class Program
    {
        static void Main(string[] args)
        {
            string text = "Hello, Welcome to the rookienerd \n" +
                "It is nice site. \n" +
                "It provides technical 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());
            }
        }
    }
}
Output
Hello, Welcome to the rookienerd It is nice site. It provides technical tutorials
Related Tutorial
Follow Us
https://www.facebook.com/Rookie-Nerd-638990322793530 https://twitter.com/RookieNerdTutor https://plus.google.com/b/117136517396468545840 #
Contents +