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


Метод My.Computer.FileSystem.WriteAllText

Обновлен: Ноябрь 2007

Записывает текст в файл.

' Usage
My.Computer.FileSystem.WriteAllText(file ,text ,append)
My.Computer.FileSystem.WriteAllText(file ,text ,append ,encoding)
' Declaration
Public Sub WriteAllText( _
   ByVal file As String, _
   ByVal text As String, _
   ByVal append As Boolean _
)
' -or-
Public Sub WriteAllText( _
   ByVal file As String, _
   ByVal text As String, _
   ByVal append As Boolean, _
   ByVal encoding As System.Text.Encoding _
)

Параметры

  • file
    String. Файл для записи. Обязательный параметр.

  • text
    String. Текст, который необходимо записать в файл. Обязательный параметр.

  • append
    Boolean. Указывает, следует ли добавить текст или же перезаписать существующий текст. По умолчанию используется значение False. Обязательный параметр.

  • encoding
    Encoding. Кодировка, которую необходимо использовать при записи в файл. Обязательный параметр. Значение по умолчанию — UTF-8.

Исключения

Возникновение исключения возможно при следующих условиях:

  • Путь является недопустимым по одной из следующих причин: строка имеет нулевую длину; строка содержит только пробелы; строка содержит недопустимые знаки; строка заканчивается косой чертой или является путем устройства (начинается с \\.\) (ArgumentException).

  • Путь не является допустимым, поскольку он равен Nothing (ArgumentNullException).

  • Параметр file содержит несуществующий путь (FileNotFoundException или DirectoryNotFoundException).

  • Файл уже используется другим процессом или возникла ошибка ввода-вывода (IOException).

  • Длина пути превышает максимальную длину, определенную в системе (PathTooLongException).

  • Имя файла или каталога в пути содержит двоеточие (:) или имеет недопустимый формат (NotSupportedException).

  • У пользователя отсутствуют необходимые разрешения на просмотр пути (SecurityException).

Если код выполняется в контексте с частичным доверием, он может сгенерировать исключение из-за недостатка прав доступа. Дополнительные сведения см. в разделе Основы управления доступом для кода.

Заметки

Если кодировка не указана, то используется UTF-8. Метка порядка байтов (BOM) для кодирования записывается в файл, если не указан Encoding.Default, который использует текущую системную кодовую страницу ANSI. Если заданная кодировка не соответствует существующей кодировке файла, то заданная кодировка игнорируется.

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

Если параметр append установлен в True, то метод добавит текст к файлу; в противном случае будет перезаписан существующий текст в файле.

27t17sxs.alert_note(ru-ru,VS.90).gifПримечание.

Метод WriteAllText открывает файл, записывает в него данные и закрывает его. Код, использующий метод WriteAllText, проще, чем код, использующий объект StreamWriter. Однако при добавлении строк в файл с помощью цикла объект StreamWriter может предоставить более высокую производительность, поскольку требуется лишь один раз открыть и закрыть файл. Дополнительные сведения см. в разделе Метод My.Computer.FileSystem.OpenTextFileWriter.

Задачи

В следующей таблице перечислены примеры задач, включающих метод My.Computer.FileSystem.WriteAllText.

To

См. в разделе

Запись текста в файл

Практическое руководство. Запись текста в файлы в Visual Basic

Добавление текста в файл

Практическое руководство. Дозапись в текстовый файл в Visual Basic

Пример

Этот пример записывает строку "This is new text to be added." в файл Test.txt, перезаписывая любой существующий текст в файле.

My.Computer.FileSystem.WriteAllText("C:\TestFolder1\test.txt", _
"This is new text to be added.", False)

Этот пример записывает в FileList.txt имена файлов в папке Documents and Settings, вставляя символ перевода строки между каждой записью для удобочитаемости.

For Each foundFile As String In _
My.Computer.FileSystem.GetFiles("C:\Documents and Settings")
    foundFile = foundFile & vbCrLf
    My.Computer.FileSystem.WriteAllText _
    ("C:\Documents and Settings\FileList.txt", foundFile, True)
Next

Требования

Пространство имен:Microsoft.VisualBasic.MyServices

Класс:FileSystemProxy (предоставляет доступ к FileSystem)

Сборка: библиотека времени выполнения Visual Basic (в Microsoft.VisualBasic.dll)

Доступность по типу проекта

Тип проекта

Доступность

Приложение Windows

Да

Библиотека классов

Да

Консольное приложение

Да

Библиотека элементов управления Windows

Да

Библиотека веб-элементов управления

Да

Служба Windows

Да

Веб-узел

Да

Разрешения

Могут потребоваться следующие разрешения:

Разрешение

Описание

FileIOPermission

Определяет возможность доступа к файлам или папкам. Связанное перечисление: Unrestricted.

Дополнительные сведения см. в разделах Управление доступом для кода и Запрос разрешений.

См. также

Ссылки

Объект My.Computer.FileSystem

System.Text.Encoding

FileSystem.WriteAllText

Метод My.Computer.FileSystem.OpenTextFileWriter

Другие ресурсы

Запись в файлы в Visual Basic