Поделиться через


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

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

Предостережение

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

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

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

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

StreamWriter(String)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
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 Mark (BOM), поэтому его GetPreamble метод возвращает пустой массив байтов. Кодировка UTF-8 по умолчанию для этого конструктора создает исключение для недопустимых байтов. Это поведение отличается от поведения, предоставленного объектом кодирования в свойстве Encoding.UTF8 . Чтобы указать BOM и определить, создается ли исключение в недопустимых байтах, используйте конструктор, принимаюющий объект кодирования в качестве параметра, например StreamWriter(String, Boolean, Encoding).

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

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

Предостережение

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

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

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

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

StreamWriter(Stream, Encoding)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
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);
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 свойство с помощью параметра кодирования и BaseStream свойство с помощью параметра потока. Позиция потока не сбрасывается. Подробнее см. в статье Encoding.

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

Предостережение

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

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

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

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

StreamWriter(String, Boolean)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
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 Mark (BOM), поэтому его GetPreamble метод возвращает пустой массив байтов. Кодировка UTF-8 по умолчанию для этого конструктора создает исключение для недопустимых байтов. Это поведение отличается от поведения, предоставленного объектом кодирования в свойстве Encoding.UTF8 . Чтобы указать BOM и определить, создается ли исключение в недопустимых байтах, используйте конструктор, принимаюющий объект кодирования в качестве параметра, например StreamWriter(String, Boolean, Encoding).

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

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

Предостережение

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

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

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

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

StreamWriter(String, FileStreamOptions)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
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 is null .

path не является записываемым.

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

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

StreamWriter(Stream, Encoding, Int32)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
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);
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 значение меньше или равно нулю, за исключением -1, которое может указывать размер буфера по умолчанию.

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.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);
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.

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

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

Предостережение

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

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

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

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

StreamWriter(String, Encoding, FileStreamOptions)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
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);
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 is null .

path не является записываемым.

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

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

StreamWriter(Stream, Encoding, Int32, Boolean)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
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Значение , falseчтобы оставить поток открытым после StreamWriter удаления объекта; в противном случае .

Исключения

stream или encoding есть null.

bufferSize значение меньше или равно нулю, за исключением -1, которое может указывать размер буфера по умолчанию.

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

Комментарии

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

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

Предостережение

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

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

StreamWriter(String, Boolean, Encoding, Int32)

Исходный код:
StreamWriter.cs
Исходный код:
StreamWriter.cs
Исходный код:
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);
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 значение меньше или равно нулю, за исключением -1, которое может указывать размер буфера по умолчанию.

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 не требуется хранить файл на диске; она может быть любой частью системы, которая поддерживает доступ через потоки.

Предостережение

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

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

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

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