StreamWriter.WriteLineAsync Method

Definition

Asynchronously writes data to the stream, followed by a line terminator.

Overloads

WriteLineAsync(ReadOnlyMemory<Char>, CancellationToken)

Asynchronously writes the text representation of a character memory region to the stream, followed by a line terminator.

WriteLineAsync()

Asynchronously writes a line terminator to the stream.

WriteLineAsync(Char)

Asynchronously writes a character to the stream, followed by a line terminator.

WriteLineAsync(String)

Asynchronously writes a string to the stream, followed by a line terminator.

WriteLineAsync(Char[], Int32, Int32)

Asynchronously writes a subarray of characters to the stream, followed by a line terminator.

WriteLineAsync(ReadOnlyMemory<Char>, CancellationToken)

Asynchronously writes the text representation of a character memory region to the stream, followed by a line terminator.

public override System.Threading.Tasks.Task WriteLineAsync (ReadOnlyMemory<char> buffer, System.Threading.CancellationToken cancellationToken = default);
override this.WriteLineAsync : ReadOnlyMemory<char> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overrides Function WriteLineAsync (buffer As ReadOnlyMemory(Of Char), Optional cancellationToken As CancellationToken = Nothing) As Task

Parameters

buffer
ReadOnlyMemory<Char>

The character memory region to write to the stream.

cancellationToken
CancellationToken

The token to monitor for cancellation requests. The default value is None.

Returns

A task that represents the asynchronous write operation.

Exceptions

The cancellation token was canceled. This exception is stored into the returned task.

Remarks

The line terminator is defined by the CoreNewLine field.

Applies to

WriteLineAsync()

Asynchronously writes a line terminator to the stream.

public:
 override System::Threading::Tasks::Task ^ WriteLineAsync();
public override System.Threading.Tasks.Task WriteLineAsync ();
[System.Runtime.InteropServices.ComVisible(false)]
public override System.Threading.Tasks.Task WriteLineAsync ();
override this.WriteLineAsync : unit -> System.Threading.Tasks.Task
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.WriteLineAsync : unit -> System.Threading.Tasks.Task
Public Overrides Function WriteLineAsync () As Task

Returns

A task that represents the asynchronous write operation.

Attributes

Exceptions

The stream writer is disposed.

The stream writer is currently in use by a previous write operation.

Remarks

The line terminator is defined by the TextWriter.NewLine property.

Applies to

WriteLineAsync(Char)

Asynchronously writes a character to the stream, followed by a line terminator.

public:
 override System::Threading::Tasks::Task ^ WriteLineAsync(char value);
public override System.Threading.Tasks.Task WriteLineAsync (char value);
[System.Runtime.InteropServices.ComVisible(false)]
public override System.Threading.Tasks.Task WriteLineAsync (char value);
override this.WriteLineAsync : char -> System.Threading.Tasks.Task
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.WriteLineAsync : char -> System.Threading.Tasks.Task
Public Overrides Function WriteLineAsync (value As Char) As Task

Parameters

value
Char

The character to write to the stream.

Returns

A task that represents the asynchronous write operation.

Attributes

Exceptions

The stream writer is disposed.

The stream writer is currently in use by a previous write operation.

Examples

The following example shows how to write a single character (the letter "a") to a line in a text file, followed by another line that contains a single character (the letter "b"), by using the WriteLineAsync(Char) method.

using System.IO;

namespace ConsoleApplication
{
    class Program3
    {
        static void Main()
        {
            WriteCharacters();
        }

        static async void WriteCharacters()
        {
            using (StreamWriter writer = File.CreateText("newfile.txt"))
            {
                await writer.WriteLineAsync('a');
                await writer.WriteLineAsync('b');
            }
        }
    }
}
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        WriteCharacters()
    End Sub

    Async Sub WriteCharacters()
        Dim firstChar As Char = "a"
        Dim secondChar As Char = "b"
        Using writer As StreamWriter = File.CreateText("newfile.txt")
            Await writer.WriteLineAsync(firstChar)
            Await writer.WriteLineAsync(secondChar)
        End Using
    End Sub
End Module

Remarks

The line terminator is defined by the TextWriter.NewLine property.

Applies to

WriteLineAsync(String)

Asynchronously writes a string to the stream, followed by a line terminator.

public:
 override System::Threading::Tasks::Task ^ WriteLineAsync(System::String ^ value);
public override System.Threading.Tasks.Task WriteLineAsync (string value);
public override System.Threading.Tasks.Task WriteLineAsync (string? value);
[System.Runtime.InteropServices.ComVisible(false)]
public override System.Threading.Tasks.Task WriteLineAsync (string value);
override this.WriteLineAsync : string -> System.Threading.Tasks.Task
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.WriteLineAsync : string -> System.Threading.Tasks.Task
Public Overrides Function WriteLineAsync (value As String) As Task

Parameters

value
String

The string to write. If the value is null, only a line terminator is written.

Returns

A task that represents the asynchronous write operation.

Attributes

Exceptions

The stream writer is disposed.

The stream writer is currently in use by a previous write operation.

Examples

The following example shows how to write two lines that consist of string values to a text file by using the WriteLineAsync(String) method.

using System.IO;

namespace ConsoleApplication
{
    class Program4
    {
        static void Main()
        {
            WriteCharacters();
        }

        static async void WriteCharacters()
        {
            using (StreamWriter writer = File.CreateText("newfile.txt"))
            {
                await writer.WriteLineAsync("First line of example");
                await writer.WriteLineAsync("and second line");
            }
        }
    }
}
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        WriteCharacters()
    End Sub

    Async Sub WriteCharacters()
        Using writer As StreamWriter = File.CreateText("newfile.txt")
            Await writer.WriteLineAsync("First line of example")
            Await writer.WriteLineAsync("and second line")
        End Using
    End Sub
End Module

Remarks

The line terminator is defined by the TextWriter.NewLine property.

This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as ArgumentException, are still thrown synchronously. For the stored exceptions, see the exceptions thrown by WriteLine(String).

Applies to

WriteLineAsync(Char[], Int32, Int32)

Asynchronously writes a subarray of characters to the stream, followed by a line terminator.

public:
 override System::Threading::Tasks::Task ^ WriteLineAsync(cli::array <char> ^ buffer, int index, int count);
public override System.Threading.Tasks.Task WriteLineAsync (char[] buffer, int index, int count);
[System.Runtime.InteropServices.ComVisible(false)]
public override System.Threading.Tasks.Task WriteLineAsync (char[] buffer, int index, int count);
override this.WriteLineAsync : char[] * int * int -> System.Threading.Tasks.Task
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.WriteLineAsync : char[] * int * int -> System.Threading.Tasks.Task
Public Overrides Function WriteLineAsync (buffer As Char(), index As Integer, count As Integer) As Task

Parameters

buffer
Char[]

The character array to write data from.

index
Int32

The character position in the buffer at which to start reading data.

count
Int32

The maximum number of characters to write.

Returns

A task that represents the asynchronous write operation.

Attributes

Exceptions

buffer is null.

The index plus count is greater than the buffer length.

index or count is negative.

The stream writer is disposed.

The stream writer is currently in use by a previous write operation.

Examples

The following example shows how to write characters to two separate lines in a text file by using the WriteLineAsync(Char[], Int32, Int32) method. The first line contains the first 11 characters from the string (the letters "First line" followed by a space). The second line contains the remaining characters from the string (the letters "and second line").

using System.IO;
using System.Text;

namespace ConsoleApplication
{
    class Program6
    {
        static void Main()
        {
            WriteCharacters();
        }

        static async void WriteCharacters()
        {
            UnicodeEncoding ue = new UnicodeEncoding();
            char[] charsToAdd = ue.GetChars(ue.GetBytes("First line and second line"));
            using (StreamWriter writer = File.CreateText("newfile.txt"))
            {
                await writer.WriteLineAsync(charsToAdd, 0, 11);
                await writer.WriteLineAsync(charsToAdd, 11, charsToAdd.Length - 11);
            }
        }
    }
}
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        WriteCharacters()
    End Sub

    Async Sub WriteCharacters()
        Dim ue As UnicodeEncoding = New UnicodeEncoding()
        Dim charsToAdd() = ue.GetChars(ue.GetBytes("First line and second line"))

        Using writer As StreamWriter = File.CreateText("newfile.txt")
            Await writer.WriteLineAsync(charsToAdd, 0, 11)
            Await writer.WriteLineAsync(charsToAdd, 11, charsToAdd.Length - 11)
        End Using
    End Sub
End Module

Remarks

The line terminator is defined by the TextWriter.NewLine property.

Applies to