'Перед работой необходимо импортировать пространство имен System.IO:

Imports System.IO'

Как создать новый файл?

File.Create("c:\Текстовой документ.txt")

Как проверить существование файла?

 Dim FI As IO.FileInfo = New IO.FileInfo("c:\test.txt")
 If FI.Exists Then
 CheckBase = True
 Else
 CheckBase = False
 End If  

Как копировать файл?

File.Copy("c:\Текстовой документ.txt", "c:\Новая папка\Текстовой документ.txt")

'Таже можно указать третий параметр, который позволит перезаписать конечный файл, в случае, если он существует:
File.Copy("c:\Текстовой документ.txt", "c:\Новая папка\Текстовой документ.txt", True) 'Если файл "c:\Новая папка\Текстовой документ.txt" существует, он будет перезаписан
 

Как удалить файл?
File.Delete("c:\Текстовой документ.txt")

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

        ' Get the directories currently on the C drive. 
        Dim cDirs As DirectoryInfo() = New DirectoryInfo("c:\").GetDirectories()

        ' Write each directory name to a file. 
        Using sw As StreamWriter = New StreamWriter("CDriveDirs.txt")
            For Each Dir As DirectoryInfo In cDirs
                sw.WriteLine(Dir.Name)
            Next 
        End Using 

        'Read and show each line from the file. 
        Dim line As String = "" 
        Using sr As StreamReader = New StreamReader("CDriveDirs.txt")
            Do
                line = sr.ReadLine()
                Console.WriteLine(line)
            Loop Until line Is Nothing 
        End Using.

Try
 Dim myWriteFile As New StreamWriter("c:\test.txt")
 myWriteFile.WriteLine("hello world")
 myWriteFile.Flush()
 myWriteFile.Close()
 myWriteFile = Nothing
Catch ex As IOException
 MsgBox(ex.ToString)
End Try
'или (для Framework 2.x и старше)
Try
 Using myWriteFile As New StreamWriter("c:\test.txt")
 myWriteFile.WriteLine("hello world")
 End Using
Catch ex As IOException
 MsgBox(ex.ToString) 'ошибка
End Try
 

Чтение из текстового файла:


        Try 
            ' Create an instance of StreamReader to read from a file. 
            Dim sr As StreamReader = New StreamReader("TestFile.txt")
            Dim line As String 
            ' Read and display the lines from the file until the end  
            ' of the file is reached. 
            Do
                line = sr.ReadLine()
                Console.WriteLine(Line)
            Loop Until line Is Nothing
            sr.Close()
        Catch E As Exception
            ' Let the user know what went wrong.
            Console.WriteLine("The file could not be read:")
            Console.WriteLine(E.Message)
        End Try 


Try
 Dim myReadFile As New StreamReader("c:\test.txt")
 'выбор кодировки
 'Dim myReadFile As New StreamReader("c:\test.txt",System.Text.Encoding.GetEncoding(1251))'windows-1251
 Dim sReadLine As String = ""
 While True
 sReadLine = myReadFile.ReadLine()
 If sReadLine Is Nothing Then
 Exit While
 Else
 MsgBox(sReadLine)
 End If
 End While
 myReadFile.Close()
 myReadFile = Nothing
Catch ex As IOException
 MsgBox(ex.ToString) 'ошибка
End Try
'или (для Framework 2.x и старше)
Try
 Using myReadFile As New StreamReader("c:\test.txt")
 'выбор кодировки
 'Using myReadFile As New StreamReader("c:\test.txt",System.Text.Encoding.GetEncoding(1251))'windows-1251
 Dim sReadLine As String = ""
 While True
 sReadLine = myReadFile.ReadLine()
 If sReadLine Is Nothing Then
 Exit While
 Else
 MsgBox(sReadLine)
 End If
 End While
 End Using
Catch ex As IOException
 MsgBox(ex.ToString) 'ошибка
End Try
 
'для чтения всего файла можно использовать метод ReadToEnd():
'MsgBox(myReadFile.ReadToEnd())

Запись в бинарный файл:


Try
 Dim myFileStream As FileStream
 myFileStream = New FileStream("C:\Binary.dat", FileMode.Create)
 Dim myBinaryWriter As New BinaryWriter(myFileStream)
 myBinaryWriter.Write("Привет! Это бинарные данные :)")
 myBinaryWriter.Close()
 myFileStream.Close()
Catch ex As Exception
 MsgBox(ex.ToString) 'ошибка
End Try
'или
Try
 Using myFileStream As New FileStream("C:\Binary.dat", FileMode.Create)
 Using myBinaryWriter As New BinaryWriter(myFileStream)
 myBinaryWriter.Write("Привет! Это бинарные данные :)")
 End Using
 End Using
Catch ex As Exception
 MsgBox(ex.ToString) 'ошибка
End Try

Чтение бинарного файла:


Try
 Dim myFileStream As System.IO.FileStream
 myFileStream = New System.IO.FileStream("C:\Binary.dat", FileMode.Open)
 Dim myBinaryReader As New System.IO.BinaryReader(myFileStream)
 'считываем файл в переменную bData
 Dim bData() As Byte = myBinaryReader.ReadBytes(myFileStream.Length)
 'можно использовать другие методы чтения, например:
 'myBinaryReader.ReadString()
 myBinaryReader.Close()
 myFileStream.Close()
Catch ex As Exception
 MsgBox(ex.ToString) 'ошибка
End Try
'или
Try
 Using myFileStream As New System.IO.FileStream("C:\Binary.dat", FileMode.Open)
 Using myBinaryReader As New System.IO.BinaryReader(myFileStream)
 'считываем файл в переменную bData
 Dim bData() As Byte = myBinaryReader.ReadBytes(myFileStream.Length)
 'можно использовать другие методы чтения, например:
 'myBinaryReader.ReadString()
 End Using
 End Using
Catch ex As Exception
 MsgBox(ex.ToString) 'ошибка
End Try

 

 

Процедура СохранитьТЗвБДФ(ТЗ, Файл, Кодировка = Неопределено)
    ДБФ = Новый XBase;
    Если Кодировка = Неопределено Тогда
        Кодировка = КодировкаXBase.OEM;
    КонецЕсли;    
    ДБФ.Кодировка = Кодировка;
    
    Для Каждого Колонка ИЗ ТЗ.Колонки Цикл
        Если Колонка.ТипЗначения.СодержитТип(Тип("Строка")) Тогда
            Тип = "S";
            Длина = Колонка.ТипЗначения.КвалификаторыСтроки.Длина;
            Если Длина = 0 Тогда
                Длина = 100;
            КонецЕсли;    
            Точность = 0;
            
        ИначеЕсли Колонка.ТипЗначения.СодержитТип(Тип("Число")) Тогда    
            Тип = "N";
            Длина = Колонка.ТипЗначения.КвалификаторыЧисла.Разрядность;
            Точность = Колонка.ТипЗначения.КвалификаторыЧисла.РазрядностьДробнойЧасти;
            Если Длина = 0 Тогда
                Длина = 15;
                Точность = 3;
            КонецЕсли;    
            
        ИначеЕсли Колонка.ТипЗначения.СодержитТип(Тип("Дата")) Тогда    
            Тип = "D";
            Длина = 0;
            Точность = 0;
            
        ИначеЕсли Колонка.ТипЗначения.СодержитТип(Тип("Булево")) Тогда    
            Тип = "L";
            Дина = 0;
            Точность = 0;
            
        Иначе
            Тип = "S";
            Длина = 100;
            Точность = 0;
        КонецЕсли;    
        
        ДБФ.поля.Добавить(Колонка.Имя, Тип, Длина, Точность);
    КонецЦикла;
    ДБФ.СоздатьФайл(Файл);
    
    Для Каждого Стр ИЗ ТЗ Цикл
        ДБФ.Добавить();
        ЗаполнитьЗначенияСвойств(ДБФ, Стр);
        ДБФ.Записать();
    КонецЦикла;    
КонецПроцедуры