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 вызове .
Внимание!
При компиляции набора символов с определенными культурными параметрами и извлечении тех же символов с другим параметром культуры символы могут быть не интерпретируемыми и могут вызвать исключение.
Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.
См. также раздел
- Encoding
- Файловый и потоковый ввод-вывод
- Практическое руководство. Чтение текста из файла
- Практическое руководство. Запись текста в файл
Применяется к
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 вызове .
Внимание!
При компиляции набора символов с определенными культурными параметрами и извлечении тех же символов с другим параметром культуры символы могут быть не интерпретируемыми и могут вызвать исключение.
Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.
См. также раздел
- Encoding
- Файловый и потоковый ввод-вывод
- Практическое руководство. Чтение текста из файла
- Практическое руководство. Запись текста в файл
Применяется к
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
не обязательно должен быть файлом, хранящимся на диске; Это может быть любая часть системы, поддерживающая доступ через потоки.
Внимание!
При компиляции набора символов с определенными культурными параметрами и извлечении тех же символов с другим параметром культуры символы могут быть не интерпретируемыми и могут вызвать исключение.
Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.
См. также раздел
- Encoding
- Файловый и потоковый ввод-вывод
- Практическое руководство. Чтение текста из файла
- Практическое руководство. Запись текста в файл
Применяется к
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
не обязательно быть файлом, хранящимся на диске; это может быть любая часть системы, поддерживающая доступ через потоки.
Внимание!
При компиляции набора символов с определенными параметрами культуры и извлечении этих же символов с другим параметром и региональных параметров символы могут быть не интерпретируемыми, что может привести к возникновению исключения.
Список распространенных задач ввода-вывода см. в разделе Общие задачи ввода-вывода.
См. также раздел
- Encoding
- Файловый и потоковый ввод-вывод
- Практическое руководство. Чтение текста из файла
- Практическое руководство. Запись текста в файл