StreamWriter Конструкторы

Определение

Инициализирует новый экземпляр класса StreamWriter.

Перегрузки

StreamWriter(Stream)

Инициализирует новый экземпляр класса StreamWriter для указанного потока, используя кодировку UTF-8 и размер буфера по умолчанию.

StreamWriter(String)

Инициализирует новый экземпляр класса StreamWriter для указанного файла с помощью кодировки по умолчанию и размера буфера.

StreamWriter(Stream, Encoding)

Инициализирует новый экземпляр класса StreamWriter для указанного потока, используя заданную кодировку и размер буфера по умолчанию.

StreamWriter(String, Boolean)

Инициализирует новый экземпляр класса StreamWriter для указанного файла с помощью кодировки по умолчанию и размера буфера. Если файл существует, он может быть либо перезаписан, либо в него могут быть добавлены данные. Если файл не существует, конструктор создает новый файл.

StreamWriter(String, FileStreamOptions)

Инициализирует новый экземпляр StreamWriter класса для указанного файла, используя кодировку по умолчанию и настроенный с помощью указанного FileStreamOptions объекта .

StreamWriter(Stream, Encoding, Int32)

Инициализирует новый экземпляр класса StreamWriter для указанного потока, используя заданную кодировку и размер буфера.

StreamWriter(String, Boolean, Encoding)

Инициализирует новый экземпляр класса StreamWriter для указанного файла с помощью указанной кодировки и размера буфера по умолчанию. Если файл существует, он может быть либо перезаписан, либо в него могут быть добавлены данные. Если файл не существует, конструктор создает новый файл.

StreamWriter(String, Encoding, FileStreamOptions)

Инициализирует новый экземпляр StreamWriter класса для указанного файла, используя указанную кодировку и настроенный с помощью указанного FileStreamOptions объекта .

StreamWriter(Stream, Encoding, Int32, Boolean)

Инициализирует новый экземпляр класса StreamWriter для указанного потока, используя заданную кодировку и размер буфера, а также при необходимости оставляет поток открытым.

StreamWriter(String, Boolean, Encoding, Int32)

Инициализирует новый экземпляр класса StreamWriter для указанного файла по заданному пути, используя заданную кодировку и размер буфера. Если файл существует, он может быть либо перезаписан, либо в него могут быть добавлены данные. Если файл не существует, конструктор создает новый файл.

StreamWriter(Stream)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs

Инициализирует новый экземпляр класса StreamWriter для указанного потока, используя кодировку UTF-8 и размер буфера по умолчанию.

public:
 StreamWriter(System::IO::Stream ^ stream);
public StreamWriter (System.IO.Stream stream);
new System.IO.StreamWriter : System.IO.Stream -> System.IO.StreamWriter
Public Sub New (stream As Stream)

Параметры

stream
Stream

Поток, в который требуется выполнить запись.

Исключения

stream недоступно для записи.

stream имеет значение null.

Примеры

В следующем примере кода демонстрируется этот конструктор.

using System;
using System.IO;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string fileName = "test.txt";
            string textToAdd = "Example text in file";
            FileStream fs = null;
            try
            {
                fs = new FileStream(fileName, FileMode.CreateNew);
                using (StreamWriter writer = new StreamWriter(fs))
                {
                    writer.Write(textToAdd);
                }
            }
            finally
            {
                if (fs != null)
                    fs.Dispose();
            }
        }
    }
}
Imports System.IO

Module Module1

    Sub Main()
        Dim fileName As String = "test.txt"
        Dim textToAdd As String = "Example text in file"
        Dim fs As FileStream = Nothing
        Try
            fs = New FileStream(fileName, FileMode.CreateNew)
            Using writer As StreamWriter = New StreamWriter(fs)
                writer.Write(textToAdd)
            End Using
        Finally
            If Not fs Is Nothing Then
                fs.Dispose()
            End If
        End Try
    End Sub

End Module

Комментарии

Этот конструктор создает с кодировкой StreamWriter UTF-8 без метки Byte-Order (BOM), поэтому его GetPreamble метод возвращает пустой массив байтов. Кодировка UTF-8 по умолчанию для этого конструктора создает исключение для недопустимых байтов. Это поведение отличается от поведения, предоставляемого объектом кодирования в свойстве Encoding.UTF8 . Чтобы указать, вызывается ли исключение для недопустимых байтов, используйте конструктор, который принимает объект кодирования в качестве параметра, например StreamWriter. Свойство BaseStream инициализируется stream с помощью параметра . Положение потока не сбрасывается.

Объект StreamWriter вызывает Dispose() предоставленный Stream объект при StreamWriter.Dispose вызове .

Внимание!

При компиляции набора символов с определенными культурными параметрами и извлечении тех же символов с другим параметром и региональных параметров символы могут быть не интерпретируемыми, что может привести к возникновению исключения.

Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.

См. также раздел

Применяется к

StreamWriter(String)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs

Инициализирует новый экземпляр класса StreamWriter для указанного файла с помощью кодировки по умолчанию и размера буфера.

public:
 StreamWriter(System::String ^ path);
public StreamWriter (string path);
new System.IO.StreamWriter : string -> System.IO.StreamWriter
Public Sub New (path As String)

Параметры

path
String

Полный путь к файлу для записи. Параметр path может представлять собой имя файла.

Исключения

Отказано в доступе".

Параметр path является пустой строкой ("").

-или-

path содержит имя системного устройства (com1, com2 и т. д.).

path имеет значение null.

Указан недопустимый путь (например, он ведет на несопоставленный диск).

Указанный путь, имя файла или оба значения превышают максимальную длину, заданную в системе.

Параметр path включает неверный или недопустимый синтаксис имени файла, имени каталога или метки тома.

У вызывающего объекта отсутствует необходимое разрешение.

Примеры

В следующем примере кода демонстрируется этот конструктор.

using System;
using System.IO;
using System.Text;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string fileName = "test.txt";
            string textToAdd = "Example text in file";

            using (StreamWriter writer = new StreamWriter(fileName))
            {
                writer.Write(textToAdd);
            }
        }
    }
}
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        Dim fileName As String = "test.txt"
        Dim textToAdd As String = "Example text in file"

        Using writer As StreamWriter = New StreamWriter(fileName)
            writer.Write(textToAdd)
        End Using
    End Sub

End Module

Комментарии

Этот конструктор создает с кодировкой StreamWriter UTF-8 без метки Byte-Order (BOM), поэтому его GetPreamble метод возвращает пустой массив байтов. Кодировка UTF-8 по умолчанию для этого конструктора создает исключение для недопустимых байтов. Это поведение отличается от поведения, предоставляемого объектом кодирования в свойстве Encoding.UTF8 . Чтобы указать метку порядка байтов и определить, возникает ли исключение для недопустимых байтов, используйте конструктор, который принимает объект кодирования в качестве параметра, например StreamWriter(String, Boolean, Encoding).

Параметр path может быть именем файла, включая файл в UNC-ресурсе. Если файл существует, он перезаписывается; в противном случае создается новый файл.

Параметр path не обязательно должен быть файлом, хранящимся на диске; он может быть любой частью системы, поддерживающей доступ с помощью потоков.

Внимание!

При компиляции набора символов с определенными культурными параметрами и извлечении тех же символов с другим параметром и региональных параметров символы могут быть не интерпретируемыми, что может привести к возникновению исключения.

Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.

См. также раздел

Применяется к

StreamWriter(Stream, Encoding)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs

Инициализирует новый экземпляр класса StreamWriter для указанного потока, используя заданную кодировку и размер буфера по умолчанию.

public:
 StreamWriter(System::IO::Stream ^ stream, System::Text::Encoding ^ encoding);
public StreamWriter (System.IO.Stream stream, System.Text.Encoding encoding);
new System.IO.StreamWriter : System.IO.Stream * System.Text.Encoding -> System.IO.StreamWriter
Public Sub New (stream As Stream, encoding As Encoding)

Параметры

stream
Stream

Поток, в который требуется выполнить запись.

encoding
Encoding

Кодировка символов, которую нужно использовать.

Исключения

Параметр stream или encoding имеет значение null.

stream недоступно для записи.

Примеры

В следующем примере демонстрируется этот конструктор.

using System;
using System.IO;
using System.Text;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string fileName = "test.txt";
            string textToAdd = "Example text in file";
            FileStream fs = null;
            try
            {
               fs = new FileStream(fileName, FileMode.CreateNew);
               using (StreamWriter writer = new StreamWriter(fs, Encoding.Default))
                {
                    writer.Write(textToAdd);
                }
            }
            finally
            {
                if (fs != null)
                    fs.Dispose();
            }
        }
    }
}
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        Dim fileName As String = "test.txt"
        Dim textToAdd As String = "Example text in file"
        Dim fs As FileStream = Nothing
        Try
            fs = New FileStream(fileName, FileMode.CreateNew)
            Using writer As StreamWriter = New StreamWriter(fs, Encoding.Default)
                writer.Write(textToAdd)
            End Using
        Finally
            If Not fs Is Nothing Then
                fs.Dispose()
            End If
        End Try
    End Sub

End Module

Комментарии

Этот конструктор инициализирует Encoding свойство с помощью параметра encoding, а BaseStream свойство — с помощью параметра stream. Положение потока не сбрасывается. Дополнительные сведения см. в разделе Encoding.

Объект StreamWriter вызывает Dispose() предоставленный Stream объект при StreamWriter.Dispose вызове .

Внимание!

При компиляции набора символов с определенными культурными параметрами и извлечении тех же символов с другим параметром культуры символы могут быть не интерпретируемыми и могут вызвать исключение.

Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.

См. также раздел

Применяется к

StreamWriter(String, Boolean)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs

Инициализирует новый экземпляр класса StreamWriter для указанного файла с помощью кодировки по умолчанию и размера буфера. Если файл существует, он может быть либо перезаписан, либо в него могут быть добавлены данные. Если файл не существует, конструктор создает новый файл.

public:
 StreamWriter(System::String ^ path, bool append);
public StreamWriter (string path, bool append);
new System.IO.StreamWriter : string * bool -> System.IO.StreamWriter
Public Sub New (path As String, append As Boolean)

Параметры

path
String

Полный путь к файлу для записи.

append
Boolean

true для добавления данных в файл; значение false для перезаписи файла. Если указанный файл не существует, этот параметр не действует и конструктор создает новый файл.

Исключения

Отказано в доступе".

Параметр path пуст.

-или-

path содержит имя системного устройства (com1, com2 и т. д.).

path имеет значение null.

Указан недопустимый путь (например, он ведет на несопоставленный диск).

Параметр path включает неверный или недопустимый синтаксис имени файла, имени каталога или метки тома.

Указанный путь, имя файла или оба значения превышают максимальную длину, заданную в системе.

У вызывающего объекта отсутствует необходимое разрешение.

Примеры

В следующем примере кода демонстрируется этот конструктор.

using System;
using System.IO;
using System.Text;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string fileName = "test.txt";
            string textToAdd = "Example text in file";

            using (StreamWriter writer = new StreamWriter(fileName, true))
            {
                writer.Write(textToAdd);
            }
        }
    }
}
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        Dim fileName As String = "test.txt"
        Dim textToAdd As String = "Example text in file"

        Using writer As StreamWriter = New StreamWriter(fileName, True)
            writer.Write(textToAdd)
        End Using
    End Sub

End Module

Комментарии

Этот конструктор создает с кодировкой StreamWriter UTF-8 без метки Byte-Order (BOM), поэтому его GetPreamble метод возвращает пустой массив байтов. Кодировка UTF-8 по умолчанию для этого конструктора создает исключение для недопустимых байтов. Это поведение отличается от поведения, предоставляемого объектом кодирования в свойстве Encoding.UTF8 . Чтобы указать метку порядка байтов и определить, возникает ли исключение для недопустимых байтов, используйте конструктор, который принимает объект кодирования в качестве параметра, например StreamWriter(String, Boolean, Encoding).

Параметр path может быть именем файла, включая файл в UNC-ресурсе.

Параметр path не обязательно должен быть файлом, хранящимся на диске; он может быть любой частью системы, поддерживающей доступ с помощью потоков.

Внимание!

При компиляции набора символов с определенными культурными параметрами и извлечении тех же символов с другим параметром культуры символы могут быть не интерпретируемыми и могут вызвать исключение.

Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.

См. также раздел

Применяется к

StreamWriter(String, FileStreamOptions)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs

Инициализирует новый экземпляр StreamWriter класса для указанного файла, используя кодировку по умолчанию и настроенный с помощью указанного FileStreamOptions объекта .

public:
 StreamWriter(System::String ^ path, System::IO::FileStreamOptions ^ options);
public StreamWriter (string path, System.IO.FileStreamOptions options);
new System.IO.StreamWriter : string * System.IO.FileStreamOptions -> System.IO.StreamWriter
Public Sub New (path As String, options As FileStreamOptions)

Параметры

path
String

Полный путь к файлу для записи.

options
FileStreamOptions

Объект , указывающий параметры конфигурации для базового FileStreamобъекта .

Исключения

options имеет значение null .

stream недоступно для записи.

См. также раздел

Применяется к

StreamWriter(Stream, Encoding, Int32)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs

Инициализирует новый экземпляр класса StreamWriter для указанного потока, используя заданную кодировку и размер буфера.

public:
 StreamWriter(System::IO::Stream ^ stream, System::Text::Encoding ^ encoding, int bufferSize);
public StreamWriter (System.IO.Stream stream, System.Text.Encoding encoding, int bufferSize);
new System.IO.StreamWriter : System.IO.Stream * System.Text.Encoding * int -> System.IO.StreamWriter
Public Sub New (stream As Stream, encoding As Encoding, bufferSize As Integer)

Параметры

stream
Stream

Поток, в который требуется выполнить запись.

encoding
Encoding

Кодировка символов, которую нужно использовать.

bufferSize
Int32

Размер буфера в байтах.

Исключения

Параметр stream или encoding имеет значение null.

bufferSize является отрицательным значением.

stream недоступно для записи.

Примеры

В следующем примере демонстрируется этот конструктор.

using System;
using System.IO;
using System.Text;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string fileName = "test.txt";
            string textToAdd = "Example text in file";
            FileStream fs = null;
            try
            {
                fs = new FileStream(fileName, FileMode.CreateNew);
                using (StreamWriter writer = new StreamWriter(fs, Encoding.UTF8, 512))
                {
                    writer.Write(textToAdd);
                }
            }
            finally
            {
                if (fs != null)
                    fs.Dispose();
            }
        }
    }
}
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        Dim fileName As String = "test.txt"
        Dim textToAdd As String = "Example text in file"
        Dim fs As FileStream = Nothing
        Try
            fs = New FileStream(fileName, FileMode.CreateNew)
            Using writer As StreamWriter = New StreamWriter(fs, Encoding.Default, 512)
                writer.Write(textToAdd)
            End Using
        Finally
            If Not fs Is Nothing Then
                fs.Dispose()
            End If
        End Try
    End Sub

End Module

Комментарии

Этот конструктор инициализирует Encoding свойство с помощью encoding параметра , а BaseStream свойство — с помощью stream параметра . Положение потока не сбрасывается. Дополнительные сведения см. в разделе Encoding.

Объект StreamWriter вызывает Dispose() предоставленный Stream объект при StreamWriter.Dispose вызове .

Внимание!

При компиляции набора символов с определенными культурными параметрами и извлечении тех же символов с другим параметром культуры символы могут быть не интерпретируемыми и могут вызвать исключение.

Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.

См. также раздел

Применяется к

StreamWriter(String, Boolean, Encoding)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs

Инициализирует новый экземпляр класса StreamWriter для указанного файла с помощью указанной кодировки и размера буфера по умолчанию. Если файл существует, он может быть либо перезаписан, либо в него могут быть добавлены данные. Если файл не существует, конструктор создает новый файл.

public:
 StreamWriter(System::String ^ path, bool append, System::Text::Encoding ^ encoding);
public StreamWriter (string path, bool append, System.Text.Encoding encoding);
new System.IO.StreamWriter : string * bool * System.Text.Encoding -> System.IO.StreamWriter
Public Sub New (path As String, append As Boolean, encoding As Encoding)

Параметры

path
String

Полный путь к файлу для записи.

append
Boolean

true для добавления данных в файл; значение false для перезаписи файла. Если указанный файл не существует, этот параметр не действует и конструктор создает новый файл.

encoding
Encoding

Кодировка символов, которую нужно использовать.

Исключения

Отказано в доступе".

Параметр path пуст.

-или-

path содержит имя системного устройства (com1, com2 и т. д.).

path имеет значение null.

Указан недопустимый путь (например, он ведет на несопоставленный диск).

Параметр path включает неверный или недопустимый синтаксис имени файла, имени каталога или метки тома.

Указанный путь, имя файла или оба значения превышают максимальную длину, заданную в системе.

У вызывающего объекта отсутствует необходимое разрешение.

Примеры

В следующем примере демонстрируется этот конструктор.

using System;
using System.IO;
using System.Text;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string fileName = "test.txt";
            string textToAdd = "Example text in file";

            using (StreamWriter writer = new StreamWriter(fileName, true, Encoding.UTF8))
            {
                writer.Write(textToAdd);
            }
        }
    }
}
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        Dim fileName As String = "test.txt"
        Dim textToAdd As String = "Example text in file"

        Using writer As StreamWriter = New StreamWriter(fileName, True, Encoding.UTF8)
            writer.Write(textToAdd)
        End Using
    End Sub

End Module

Комментарии

Этот конструктор инициализирует Encoding свойство с помощью параметра encoding. Дополнительные сведения см. в разделе Encoding.

path может быть именем файла, включая файл в UNC-ресурсе.

path не обязательно должен быть файлом, хранящимся на диске; Это может быть любая часть системы, поддерживающая доступ через потоки.

Внимание!

При компиляции набора символов с определенными культурными параметрами и извлечении тех же символов с другим параметром культуры символы могут быть не интерпретируемыми и могут вызвать исключение.

Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.

См. также раздел

Применяется к

StreamWriter(String, Encoding, FileStreamOptions)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs

Инициализирует новый экземпляр StreamWriter класса для указанного файла, используя указанную кодировку и настроенный с помощью указанного FileStreamOptions объекта .

public:
 StreamWriter(System::String ^ path, System::Text::Encoding ^ encoding, System::IO::FileStreamOptions ^ options);
public StreamWriter (string path, System.Text.Encoding encoding, System.IO.FileStreamOptions options);
new System.IO.StreamWriter : string * System.Text.Encoding * System.IO.FileStreamOptions -> System.IO.StreamWriter
Public Sub New (path As String, encoding As Encoding, options As FileStreamOptions)

Параметры

path
String

Полный путь к файлу для записи.

encoding
Encoding

Кодировка символов, которую нужно использовать.

options
FileStreamOptions

Объект , указывающий параметры конфигурации для базового FileStreamобъекта .

Исключения

options имеет значение null .

stream недоступно для записи.

См. также раздел

Применяется к

StreamWriter(Stream, Encoding, Int32, Boolean)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs

Инициализирует новый экземпляр класса StreamWriter для указанного потока, используя заданную кодировку и размер буфера, а также при необходимости оставляет поток открытым.

public:
 StreamWriter(System::IO::Stream ^ stream, System::Text::Encoding ^ encoding, int bufferSize, bool leaveOpen);
public StreamWriter (System.IO.Stream stream, System.Text.Encoding encoding, int bufferSize, bool leaveOpen);
public StreamWriter (System.IO.Stream stream, System.Text.Encoding? encoding = default, int bufferSize = -1, bool leaveOpen = false);
new System.IO.StreamWriter : System.IO.Stream * System.Text.Encoding * int * bool -> System.IO.StreamWriter
Public Sub New (stream As Stream, encoding As Encoding, bufferSize As Integer, leaveOpen As Boolean)
Public Sub New (stream As Stream, Optional encoding As Encoding = Nothing, Optional bufferSize As Integer = -1, Optional leaveOpen As Boolean = false)

Параметры

stream
Stream

Поток, в который требуется выполнить запись.

encoding
Encoding

Кодировка символов, которую нужно использовать.

bufferSize
Int32

Размер буфера в байтах.

leaveOpen
Boolean

Значение true, чтобы оставить поток открытым после удаления объекта StreamWriter; в противном случае — значение false.

Исключения

Параметр stream или encoding имеет значение null.

bufferSize является отрицательным значением.

stream недоступно для записи.

Примеры

В следующем примере демонстрируется этот конструктор.

using System;
using System.IO;
using System.Text;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string fileName = "test.txt";
            string textToAdd = "Example text in file";
            FileStream fs = null;
            try
            {
                fs = new FileStream(fileName, FileMode.CreateNew);
                using (StreamWriter writer = new StreamWriter(fs, Encoding.UTF8, 512, false))
                {
                    writer.Write(textToAdd);
                }
            }
            finally
            {
                if (fs != null)
                    fs.Dispose();
            }
        }
    }
}
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        Dim fileName As String = "test.txt"
        Dim textToAdd As String = "Example text in file"
        Dim fs As FileStream = Nothing
        Try
            fs = New FileStream(fileName, FileMode.CreateNew)
            Using writer As StreamWriter = New StreamWriter(fs, Encoding.Default, 512, False)
                writer.Write(textToAdd)
            End Using
        Finally
            If Not fs Is Nothing Then
                fs.Dispose()
            End If
        End Try
    End Sub

End Module

Комментарии

Если не задать leaveOpen параметр true, StreamWriter вызывает Dispose() в предоставленном Stream объекта при StreamWriter.Dispose вызывается.

Этот конструктор инициализирует Encoding свойство с помощью encoding параметра , а свойство инициализирует BaseStream с помощью stream параметра . Положение потока не сбрасывается. Дополнительные сведения см. в свойстве Encoding .

Внимание!

При компиляции набора символов с определенными культурными параметрами и извлечении тех же символов с другим параметром культуры символы могут быть не интерпретируемыми и могут вызвать исключение.

Применяется к

StreamWriter(String, Boolean, Encoding, Int32)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs

Инициализирует новый экземпляр класса StreamWriter для указанного файла по заданному пути, используя заданную кодировку и размер буфера. Если файл существует, он может быть либо перезаписан, либо в него могут быть добавлены данные. Если файл не существует, конструктор создает новый файл.

public:
 StreamWriter(System::String ^ path, bool append, System::Text::Encoding ^ encoding, int bufferSize);
public StreamWriter (string path, bool append, System.Text.Encoding encoding, int bufferSize);
new System.IO.StreamWriter : string * bool * System.Text.Encoding * int -> System.IO.StreamWriter
Public Sub New (path As String, append As Boolean, encoding As Encoding, bufferSize As Integer)

Параметры

path
String

Полный путь к файлу для записи.

append
Boolean

true для добавления данных в файл; значение false для перезаписи файла. Если указанный файл не существует, этот параметр не действует и конструктор создает новый файл.

encoding
Encoding

Кодировка символов, которую нужно использовать.

bufferSize
Int32

Размер буфера в байтах.

Исключения

Параметр path является пустой строкой ("").

-или-

path содержит имя системного устройства (com1, com2 и т. д.).

Параметр path или encoding имеет значение null.

bufferSize является отрицательным значением.

Параметр path включает неверный или недопустимый синтаксис имени файла, имени каталога или метки тома.

У вызывающего объекта отсутствует необходимое разрешение.

Отказано в доступе".

Указан недопустимый путь (например, он ведет на несопоставленный диск).

Указанный путь, имя файла или оба значения превышают максимальную длину, заданную в системе.

Примеры

В следующем примере демонстрируется этот конструктор.

using System;
using System.IO;
using System.Text;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            string fileName = "test.txt";
            string textToAdd = "Example text in file";

            using (StreamWriter writer = new StreamWriter(fileName, true, Encoding.UTF8, 512))
            {
                writer.Write(textToAdd);
            }
        }
    }
}
Imports System.IO
Imports System.Text

Module Module1

    Sub Main()
        Dim fileName As String = "test.txt"
        Dim textToAdd As String = "Example text in file"

        Using writer As StreamWriter = New StreamWriter(fileName, True, Encoding.UTF8, 512)
            writer.Write(textToAdd)
        End Using
    End Sub

End Module

Комментарии

Этот конструктор инициализирует Encoding свойство с помощью параметра кодировки. Дополнительные сведения см. в разделе Encoding.

path может быть именем файла, включая файл в общей папке UNC.

path не обязательно быть файлом, хранящимся на диске; это может быть любая часть системы, поддерживающая доступ через потоки.

Внимание!

При компиляции набора символов с определенными параметрами культуры и извлечении этих же символов с другим параметром и региональных параметров символы могут быть не интерпретируемыми, что может привести к возникновению исключения.

Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.

См. также раздел

Применяется к