Visual studio с работа с файлами: 404 — Содержимое не найдено

Содержание

Операции с файлами и каталогами — Visual Basic



  • Чтение занимает 4 мин

В этой статье

В этом пошаговом руководстве приводятся основные сведения о файловом вводе-выводе в Visual Basic. В нем описывается создание небольшого приложения, перечисляющего текстовые файлы в каталоге и анализирующего их. Для каждого выбранного текстового файла приложение предоставляет атрибуты файла и первую строку содержимого. Кроме того, предоставляется возможность записать информацию в файл журнала.

В этом пошаговом руководстве используются члены My.Computer.FileSystem Object, доступные в Visual Basic. Подробнее см. в разделе FileSystem. В конце пошагового руководства приводится эквивалентный пример, в котором используются классы пространства имен System.IO.

Примечание

Отображаемые на компьютере имена или расположения некоторых элементов пользовательского интерфейса Visual Studio могут отличаться от указанных в следующих инструкциях. Это зависит от имеющегося выпуска Visual Studio и используемых параметров. Дополнительные сведения см. в разделе Персонализация среды IDE.

Создание проекта

  1. В меню Файл выберите пункт Создать проект.

    Откроется диалоговое окно Создание проекта .

  2. В области Установленные шаблоны разверните узел Visual Basic и выберите элемент Windows. В середине области Шаблоны щелкните Приложение Windows Forms.

  3. В поле Имя введите FileExplorer, чтобы задать имя проекта, а затем нажмите кнопку ОК.

    Visual Studio добавит проект в обозреватель решений, после чего откроется конструктор Windows Forms.

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

    ControlProperty (Свойство)Значение
    ListBoxИмяfilesListBox
    ButtonИмя

    Text

    browseButton

    Обзор

    ButtonИмя

    Text

    examineButton

    Исследовать

    CheckBoxИмя

    Text

    saveCheckBox

    Сохранить результаты

    FolderBrowserDialogИмяFolderBrowserDialog1

Выбор папки и перечисление файлов в ней

  1. Создайте обработчик событий нажатия Click для кнопки browseButton, дважды щелкнув этот элемент управления в форме. Откроется редактор кода.

  2. Добавьте следующий код в обработчик событий Click.

    If FolderBrowserDialog1.ShowDialog() = DialogResult.OK Then
        ' List files in the folder.
        ListFiles(FolderBrowserDialog1.SelectedPath)
    End If
    

    Вызов FolderBrowserDialog1.ShowDialog открывает диалоговое окно Выбор папки. Когда пользователь нажимает OK, свойство SelectedPath передается как аргумент методу ListFiles, который добавляется в следующем шаге.

  3. Добавьте приведенный ниже метод ListFiles.

    Private Sub ListFiles(ByVal folderPath As String)
        filesListBox.Items.Clear()
    
        Dim fileNames = My.Computer.FileSystem.GetFiles(
            folderPath, FileIO.SearchOption.SearchTopLevelOnly, "*.txt")
    
        For Each fileName As String In fileNames
            filesListBox.Items.Add(fileName)
        Next
    End Sub
    

    Этот код сперва очищает элемент ListBox.

    Затем метод GetFiles возвращает коллекцию строк — по одной для каждого файла в каталоге. Метод GetFiles принимает аргумент шаблона поиска, чтобы извлечь файлы, соответствующие определенному шаблону. В этом примере возвращаются только файлы с расширением TXT.

    Строки, возвращаемые методом GetFiles, затем добавляются в элемент управления ListBox.

  4. Запустите приложение. Нажмите кнопку Обзор . В диалоговом окне Выбор папки перейдите в папку, содержащую TXT-файлы, выберите папку и нажмите кнопку ОК.

    Элемент ListBox содержит список TXT-файлов в выбранной папке.

  5. Остановите работу приложения.

Получение атрибутов файла и содержимого текстового файла

  1. Создайте обработчик событий нажатия Click для кнопки examineButton, дважды щелкнув этот элемент управления в форме.

  2. Добавьте следующий код в обработчик событий Click.

    If filesListBox.SelectedItem Is Nothing Then
        MessageBox.Show("Please select a file.")
        Exit Sub
    End If
    
    ' Obtain the file path from the list box selection.
    Dim filePath = filesListBox.SelectedItem.ToString
    
    ' Verify that the file was not removed since the
    ' Browse button was clicked.
    If My.Computer.FileSystem.FileExists(filePath) = False Then
        MessageBox.Show("File Not Found: " & filePath)
        Exit Sub
    End If
    
    ' Obtain file information in a string.
    Dim fileInfoText As String = GetTextForOutput(filePath)
    
    ' Show the file information.
    MessageBox.Show(fileInfoText)
    

    Этот код проверяет, выбран ли элемент в элементе ListBox. Затем он получает запись пути к файлу из элемента ListBox. Метод FileExists позволяет проверить, существует ли файл.

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

  3. Добавьте приведенный ниже метод GetTextForOutput.

    Private Function GetTextForOutput(ByVal filePath As String) As String
        ' Verify that the file exists.
        If My.Computer.FileSystem.FileExists(filePath) = False Then
            Throw New Exception("File Not Found: " & filePath)
        End If
    
        ' Create a new StringBuilder, which is used
        ' to efficiently build strings.
        Dim sb As New System.Text.StringBuilder()
    
        ' Obtain file information.
        Dim thisFile As System.IO.FileInfo = My.Computer.FileSystem.GetFileInfo(filePath)
    
        ' Add file attributes.
        sb.Append("File: " & thisFile.FullName)
        sb.Append(vbCrLf)
        sb.Append("Modified: " & thisFile.LastWriteTime.ToString)
        sb.Append(vbCrLf)
        sb.Append("Size: " & thisFile.Length.ToString & " bytes")
        sb.Append(vbCrLf)
    
        ' Open the text file.
        Dim sr As System.IO.StreamReader =
            My.Computer.FileSystem.OpenTextFileReader(filePath)
    
        ' Add the first line from the file.
        If sr.Peek() >= 0 Then
            sb.Append("First Line: " & sr.ReadLine())
        End If
        sr.Close()
    
        Return sb.ToString
    End Function
    

    Метод GetFileInfo используется в коде для получения параметров файла. Параметры файла добавляются в StringBuilder.

    Метод OpenTextFileReader считывает содержимое файла в StreamReader. Первая строка содержимого файла извлекается из StreamReader и добавляется в StringBuilder.

  4. Запустите приложение. Нажмите кнопку Обзор и перейдите в папку с TXT-файлами. Нажмите кнопку OK.

    Выберите файл в элементе ListBox и щелкните Исследовать. В окне MessageBox будет выведена информация о файле.

  5. Остановите работу приложения.

Добавление записи в журнал

  1. В конец обработчика событий examineButton_Click добавьте приведенный ниже код.

    If saveCheckBox.Checked = True Then
        ' Place the log file in the same folder as the examined file.
        Dim logFolder As String = My.Computer.FileSystem.GetFileInfo(filePath).DirectoryName
        Dim logFilePath = My.Computer.FileSystem.CombinePath(logFolder, "log.txt")
    
        Dim logText As String = "Logged: " & Date.Now.ToString &
            vbCrLf & fileInfoText & vbCrLf & vbCrLf
    
        ' Append text to the log file.
        My.Computer.FileSystem.WriteAllText(logFilePath, logText, append:=True)
    End If
    

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

    Метод WriteAllText, которому передается аргумент append со значением True, используется для создания записи в журнале.

  2. Запустите приложение. Перейдите к текстовому файлу, выберите его в элементе ListBox, установите флажок Сохранить результаты и щелкните Исследовать. Проверьте, добавлена ли запись в файл log.txt.

  3. Остановите работу приложения.

Использование текущего каталога

  1. Создайте обработчик событий для события Form1_Load, дважды щелкнув форму.

  2. Добавьте в обработчик событий приведенный ниже код.

    ' Set the default directory of the folder browser to the current directory.
    FolderBrowserDialog1.SelectedPath = My.Computer.FileSystem.CurrentDirectory
    

    Этот код задает текущий каталог в качестве каталога по умолчанию для обозревателя папок.

  3. Запустите приложение. При первом нажатии кнопки Обзор открывается диалоговое окно Выбор папки с текущим каталогом.

  4. Остановите работу приложения.

Выборочное включение элементов управления

  1. Добавьте приведенный ниже метод SetEnabled.

    Private Sub SetEnabled()
        Dim anySelected As Boolean =
            (filesListBox.SelectedItem IsNot Nothing)
    
        examineButton.Enabled = anySelected
        saveCheckBox.Enabled = anySelected
    End Sub
    

    Метод SetEnabled включает и отключает элементы управления в зависимости от того, выбран ли элемент в элементе ListBox.

  2. Создайте обработчик событий SelectedIndexChanged для элемента filesListBox, дважды щелкнув элемент управления ListBox в форме.

  3. Добавьте вызов метода SetEnabled в новый обработчик событий filesListBox_SelectedIndexChanged.

  4. Добавьте вызов метода SetEnabled в конце обработчика событий browseButton_Click.

  5. Добавьте вызов метода SetEnabled в конце обработчика событий Form1_Load.

  6. Запустите приложение. Флажок Сохранить результаты и кнопка Исследовать отключены, если элемент не выбран в элементе ListBox.

Полный пример с использованием My.Computer.FileSystem

Ниже приведен полный пример.


' This example uses members of the My.Computer.FileSystem
' object, which are available in Visual Basic.

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    ' Set the default directory of the folder browser to the current directory.
    FolderBrowserDialog1.SelectedPath = My.Computer.FileSystem.CurrentDirectory

    SetEnabled()
End Sub

Private Sub browseButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles browseButton.Click
    If FolderBrowserDialog1.ShowDialog() = DialogResult.OK Then
        ' List files in the folder.
        ListFiles(FolderBrowserDialog1.SelectedPath)
    End If
    SetEnabled()
End Sub

Private Sub ListFiles(ByVal folderPath As String)
    filesListBox.Items.Clear()

    Dim fileNames = My.Computer.FileSystem.GetFiles(
        folderPath, FileIO.SearchOption.SearchTopLevelOnly, "*.txt")

    For Each fileName As String In fileNames
        filesListBox.Items.Add(fileName)
    Next
End Sub

Private Sub examineButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles examineButton.Click
    If filesListBox.SelectedItem Is Nothing Then
        MessageBox.Show("Please select a file.")
        Exit Sub
    End If

    ' Obtain the file path from the list box selection.
    Dim filePath = filesListBox.SelectedItem.ToString

    ' Verify that the file was not removed since the
    ' Browse button was clicked.
    If My.Computer.FileSystem.FileExists(filePath) = False Then
        MessageBox.Show("File Not Found: " & filePath)
        Exit Sub
    End If

    ' Obtain file information in a string.
    Dim fileInfoText As String = GetTextForOutput(filePath)

    ' Show the file information.
    MessageBox.Show(fileInfoText)

    If saveCheckBox.Checked = True Then
        ' Place the log file in the same folder as the examined file.
        Dim logFolder As String = My.Computer.FileSystem.GetFileInfo(filePath).DirectoryName
        Dim logFilePath = My.Computer.FileSystem.CombinePath(logFolder, "log.txt")

        Dim logText As String = "Logged: " & Date.Now.ToString &
            vbCrLf & fileInfoText & vbCrLf & vbCrLf

        ' Append text to the log file.
        My.Computer.FileSystem.WriteAllText(logFilePath, logText, append:=True)
    End If
End Sub

Private Function GetTextForOutput(ByVal filePath As String) As String
    ' Verify that the file exists.
    If My.Computer.FileSystem.FileExists(filePath) = False Then
        Throw New Exception("File Not Found: " & filePath)
    End If

    ' Create a new StringBuilder, which is used
    ' to efficiently build strings.
    Dim sb As New System.Text.StringBuilder()

    ' Obtain file information.
    Dim thisFile As System.IO.FileInfo = My.Computer.FileSystem.GetFileInfo(filePath)

    ' Add file attributes.
    sb.Append("File: " & thisFile.FullName)
    sb.Append(vbCrLf)
    sb.Append("Modified: " & thisFile.LastWriteTime.ToString)
    sb.Append(vbCrLf)
    sb.Append("Size: " & thisFile.Length.ToString & " bytes")
    sb.Append(vbCrLf)

    ' Open the text file.
    Dim sr As System.IO.StreamReader =
        My.Computer.FileSystem.OpenTextFileReader(filePath)

    ' Add the first line from the file.
    If sr.Peek() >= 0 Then
        sb.Append("First Line: " & sr.ReadLine())
    End If
    sr.Close()

    Return sb.ToString
End Function

Private Sub filesListBox_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles filesListBox.SelectedIndexChanged
    SetEnabled()
End Sub

Private Sub SetEnabled()
    Dim anySelected As Boolean =
        (filesListBox.SelectedItem IsNot Nothing)

    examineButton.Enabled = anySelected
    saveCheckBox.Enabled = anySelected
End Sub

Полный пример с использованием System.IO

Следующий пример выполняет те же действия, используя классы из пространства имен System.IO вместо объектов My.Computer.FileSystem.


' This example uses classes from the System.IO namespace.

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    ' Set the default directory of the folder browser to the current directory.
    FolderBrowserDialog1.SelectedPath =
        System.IO.Directory.GetCurrentDirectory()

    SetEnabled()
End Sub

Private Sub browseButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles browseButton.Click
    If FolderBrowserDialog1.ShowDialog() = DialogResult.OK Then
        ' List files in the folder.
        ListFiles(FolderBrowserDialog1.SelectedPath)
        SetEnabled()
    End If
End Sub

Private Sub ListFiles(ByVal folderPath As String)
    filesListBox.Items.Clear()

    Dim fileNames As String() =
        System.IO.Directory.GetFiles(folderPath,
            "*.txt", System.IO.SearchOption.TopDirectoryOnly)

    For Each fileName As String In fileNames
        filesListBox.Items.Add(fileName)
    Next
End Sub

Private Sub examineButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles examineButton.Click
    If filesListBox.SelectedItem Is Nothing Then
        MessageBox.Show("Please select a file.")
        Exit Sub
    End If

    ' Obtain the file path from the list box selection.
    Dim filePath = filesListBox.SelectedItem.ToString

    ' Verify that the file was not removed since the
    ' Browse button was clicked.
    If System.IO.File.Exists(filePath) = False Then
        MessageBox.Show("File Not Found: " & filePath)
        Exit Sub
    End If

    ' Obtain file information in a string.
    Dim fileInfoText As String = GetTextForOutput(filePath)

    ' Show the file information.
    MessageBox.Show(fileInfoText)

    If saveCheckBox.Checked = True Then
        ' Place the log file in the same folder as the examined file.
        Dim logFolder As String =
            System.IO.Path.GetDirectoryName(filePath)
        Dim logFilePath = System.IO.Path.Combine(logFolder, "log.txt")

        ' Append text to the log file.
        Dim logText As String = "Logged: " & Date.Now.ToString &
            vbCrLf & fileInfoText & vbCrLf & vbCrLf

        System.IO.File.AppendAllText(logFilePath, logText)
    End If
End Sub

Private Function GetTextForOutput(ByVal filePath As String) As String
    ' Verify that the file exists.
    If System.IO.File.Exists(filePath) = False Then
        Throw New Exception("File Not Found: " & filePath)
    End If

    ' Create a new StringBuilder, which is used
    ' to efficiently build strings.
    Dim sb As New System.Text.StringBuilder()

    ' Obtain file information.
    Dim thisFile As New System.IO.FileInfo(filePath)

    ' Add file attributes.
    sb.Append("File: " & thisFile.FullName)
    sb.Append(vbCrLf)
    sb.Append("Modified: " & thisFile.LastWriteTime.ToString)
    sb.Append(vbCrLf)
    sb.Append("Size: " & thisFile.Length.ToString & " bytes")
    sb.Append(vbCrLf)

    ' Open the text file.
    Dim sr As System.IO.StreamReader =
        System.IO.File.OpenText(filePath)

    ' Add the first line from the file.
    If sr.Peek() >= 0 Then
        sb.Append("First Line: " & sr.ReadLine())
    End If
    sr.Close()

    Return sb.ToString
End Function

Private Sub filesListBox_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles filesListBox.SelectedIndexChanged
    SetEnabled()
End Sub

Private Sub SetEnabled()
    Dim anySelected As Boolean =
        (filesListBox.SelectedItem IsNot Nothing)

    examineButton.Enabled = anySelected
    saveCheckBox.Enabled = anySelected
End Sub

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

Работа с текстовыми файлами в Visual Basic.NET

Автор admin Просмотров 868 Обновлено

Урок из серии: «Программирование на Visual Basic.NET для школьников»

В предыдущем уроке рассказывалось о создании простейшего графического редактора.
В этом уроке вы узнаете, как работать с информацией, хранящейся в текстовых файлах. Будет показано, как создать новый текстовый файл на диске и как отобразить его содержимое с помощью объекта текстового поля.

Для чтения и записи текстового файла будут использоваться новые классы StreamReader и StreamWriter из библиотеки .NET Framework.

Проект «Работа с файлами»

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

Для ввода и вывода информации использовать текстовые поля.

  1. Запустите Visual Studio, создайте новый проект с именем Работа с файлами. Visual Studio добавит проект в Обозреватель решений, и откроется Конструктор Windows Forms.
  2. Добавьте в форму элементы управления Надпись (Label), текстовое поле (TextBox), две кнопки (Button).
  3. Измените значения свойств в соответствии с таблицей.
    ОбъектСвойстваЗначение
    Form1TextРабота с файлами
    Label1TextВведите текст записи:
    TextBox1Text
    Multiline
    Entry
    Пусто
    False
    True
    Button1TextСохранить запись
    Button2TextОчистить запись

Создание текстового файла

  1. В меню Вид выберите Код, чтобы открыть редактор кода.
  2. Для записи в файл предназначен класс объектов StreamWriter из пространства имен System.IO. Поэтому необходимо добавить следующие операторы в самом начале кода, перед объявлением класса формы, которое начинается с Public Class Form1.

    Imports System

    Imports System.IO

  3. Перед записью в файл необходимо создать экземпляр класса StreamWriter. Для этого достаточно в обработчике события присвоить значение соответствующей переменной.В меню Вид выберите Конструктор чтобы вернуться в окно Конструктор Windows Forms.Создайте обработчик событий Click  кнопки Button1 (Сохранить) и добавьте следующий код.
        Dim fw As StreamWriter
            Dim ReadString As String
            Try
                'Путь к файлу указан в StreamWriter конструкторе.
                'Для  параметра append установлено значение True, так что файл не будет перезаписан.
                fw = New StreamWriter("D:\Test1.txt", True)
                ReadString = TextBox1.Text
                fw.WriteLine(ReadString)
            Finally
            'Очистить поле
            TextBox1.Text = ""            
            'Закрыть файл.
                fw.Close()
            End Try

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

  4. Чтобы убедиться, что пользователь не сможет отправить пустую запись, можно добавить следующий код сразу после Dim ReadString As String.
    If (TextBox1.Text = "" Or TextBox1.Text = "Введите произвольный текст.") Then
                TextBox1.Text = "Введите произвольный текст."
                Return
    End If
  5. Создайте обработчик события Click для кнопки Очистить, добавьте в него код, очищающий элемент управления TextBox.
  6. Чтобы проверить работоспособность кода, запустите проект. В текстовое поле введите свои фамилию и имя.  Нажмите кнопку сохранить.Затем введите название проекта, нажмите сохранить. И наконец, введите текущую дату и время, нажмите Сохранить.В текстовый файл должен записаться текст, состоящий из этих трех строк. Чтение этих строк из файла выполним в следующем задании.
  7. Сохраните проект

Отображение текстового файла с помощью объекта текстового поля

Простейшим способом отображения в программе текстового файла является использование объекта TextBox (текстовое поле). Можно создать объекты текстового поля различного размера. Если содержимое текстового файла не помещается в текстовое поле, можно добавить к текстовому полю полосы прокрутки так, что пользователь сможет увидеть весь текст.

  1. Добавим в форму текстовое поле TextBox2 для отображения текстового файла и командную кнопку Button3 с надписью «Отобразить содержимое текстового файла».
  2. Настроим свойства в соответствии с таблицей.
    Элемент управленияСвойстваЗначения
    TextBox2Visible
    Multiline
    ScrollBars
    Text
    False
    True
    Both
    пустой
    Button3textПоказать содержимое текстового файла
  3. Добавьте программный код в обработчик события Click  кнопки Button3 (Показать текстовый файл).
     
    Dim fr As StreamReader
    fr = New StreamReader("D:\Test1.txt")
    Dim ReadString As String
    ReadString = ""
    Dim FileString As String 
      Do
        'Считываем строку из файла в переменную FileString.
         FileString = fr.ReadLine
         'добавляем к ReadString
         ReadString = ReadString & ControlChars.CrLf & FileString
      Loop Until (FileString = Nothing)
      fr.Close()
      TextBox2.Visible = True
      TextBox2.Text = ReadString
  4. Для чтения из файла используется  экземпляр класса StreamReader. Для этого в программном коде  объявляется переменная fr.
  5. В цикле построчно считываются записи из файла в переменную FileString и добавляются в конец текста ReadString с помощью операции конкатенация.В модуле ControlChars содержатся константы, используемые в качестве управляющих символов,
    CrLf соответствует Chr(13) + Chr(10) — сочетанию знаков возврата каретки и перевода строки.
  6. Можно обойтись без цикла, если использовать метод ReadToEnd, который получает из файла весь текст, начиная с текущей позиции (начало текстового фала) и до конца этого файла. В строке кода полученное значение присваивается переменной ReadText.
    ReadString = StreamToDisplay.ReadToEnd
  7. С помощью последних операторов закрывают текстовый файл,  делают видимым текстовое поле и изменяют значение свойства Text текстового поля на значение переменной ReadText.
  8. Чтобы удостовериться в работоспособности кода, нажмите клавишу F5 для компиляции приложения, а затем кнопку Показать текстовый файл. В текстовом поле в центральной части окна отобразится содержимое текстового файла.

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

Следующий урок: Массивы.

Работа с файлами и директориями в VB.NET

Для работы с файлами и директориями используем пространство имен System.IO 

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

Действиями с файлами:

IO.File.Create("D:/File.txt") ' Создаем новый файл
IO.File.Delete("D:/File.txt") ' Удаляем файл
IO.File.Copy("D:File.txt", "C:/File.txt") ' Копируем файл из диска D в C
IO.File.Move("D:File.txt", "D:/Работа/File1.txt") ' Перемещаем и изменяем имя файла
MsgBox(IO.File.GetCreationTime("D:/File.txt")) ' Дата создания файла
MsgBox(IO.File.GetAttributes("D:/File.txt")) ' Тип файла
Dim Файл As New IO.FileInfo("D:/File.txt")
MsgBox(Файл.Length & " байт") ' Размер файла в байтах, в следующих уроках мы будем узнавать размеры файлов в килобайтах и мегабайтах

Существует ли файл:

If IO.File.Exists("D:/File.txt") Then
MsgBox("Файл существует")
Else
MsgBox("Файл не существует")
End If

Сведения о файлах:

MsgBox(IO.Path.GetExtension("D:/File.txt")) ' Расширение файла результат будет .txt
MsgBox(IO.Path.GetFileName("D:/File.txt")) ' Имя файла без пути результат будет File.txt
MsgBox(IO.Path.GetFileNameWithoutExtension("D:/File.txt")) ' Имя файла без расширения результат будет File
MsgBox(IO.Path.GetFullPath("D:/File.txt")) ' Полное имя файла с путем результат будет D:/File.txt
MsgBox(IO.Path.GetPathRoot("D:/File.txt")) ' Имя корневого каталога результат будет D
MsgBox(IO.Directory.GetCurrentDirectory) ' Получаем путь каталога где находиться программа
MsgBox(Application.ExecutablePath) ' Получаем путь и имя исполняемого файла

Запись в файл(способов очень много, но я напишу всего два):

Добавьте на форму текстовое поле TextBox, в него мы будем вводить текст.

IO.File.WriteAllText("D:/File.txt", TextBox1.Text) ' Запись текста из TextBox1 в File.txt
' Другой способ
FileOpen(1, "D:/File.txt", OpenMode.Output)
Print(1, TextBox1.Text)
FileClose(1)

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

TextBox1.Text = My.Computer.FileSystem.ReadAllText("D:/File.txt", System.Text.Encoding.GetEncoding(1251)) ' Считываем все строки в TextBox1 с кодировкой, указывайте такую кодировку и не будет проблем с отоброжение.
TextBox1.Text = IO.File.ReadAllText("D:/File.txt", System.Text.Encoding.GetEncoding(1251)) ' Тоже самое

На этом закончим наш урок, а через несколько уроков напишем свой Текстовый редактор.

Урок №11 — Дата и время в VB.NET    | Содержание | Урок №13 — Системные звуки и файлы в VB.NET

Особенности записи текстовых файлов в Microsoft Visual Basic.

ПРОГРАММИРОВАНИЕ VISUAL BASIC 2010

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ УРАЛЬСКИЙ ГОСУДАРСТВЕННЫЙ ЛЕСОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ Кафедра информационных технологий и моделирования О.А. Карасева ПРОГРАММИРОВАНИЕ VISUAL BASIC 2010 Часть 2 Учебно-методические

Подробнее

Графические возможности Visual Basic.

Графические возможности Visual Basic. Алгоритм вывода графических изображений 1. Поместить на форму PictureBox. 2. Объявить объект Graphics (область рисования) : Dim Graph2 As Graphics 3. Создать объект

Подробнее

Лабораторная работа 1

1 Лабораторная работа 1 Использование элементов управления Button, Label и Text Box. Цель работы: ознакомиться с общим интерфейсом среды разработки Microsoft Visual Studio и языком программирования Microsoft

Подробнее

ФАЙЛЫ ПРОИЗВОЛЬНОГО ДОСТУПА

1 ФАЙЛЫ ПРОИЗВОЛЬНОГО ДОСТУПА 1 Структуры Кроме базовых типов данных, таких как Integer, Long и тп, VB поддерживает также типы данных, определяемые пользователем Они могут быть созданы как на основе базовых

Подробнее

Лекция 15 17. Базы данных

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

Подробнее

ФАЙЛЫ ПОСЛЕДОВАТЕЛЬНОГО ДОСТУПА

1 ФАЙЛЫ ПОСЛЕДОВАТЕЛЬНОГО ДОСТУПА Архитектура компьютеров предусматривает наличие оперативной и внешней памяти. В оперативной памяти находятся выполняемая в данный момент программа и обрабатываемые данные.

Подробнее

Создание хранимых процедур

Лабораторная работа 4 Цель работы: Создание хранимых процедур 1. Работа в среде Visual Studio.Net 2. Работа с языком Transact-SQL 3. Написание процедур с переменными параметрами Хранимые процедуры позволяют

Подробнее

2 От до

ПЕРЕМЕННЫЕ Иногда необходимо запомнить или записать кое-что на память. Мы для этого пользуемся, например, записной книжкой (простой или электронной) или записями на бумаге. При выполнении вычислений или

Подробнее

Анимация. 1. Введение

1 Анимация 1. Введение Для украшения дизайна приложения или для привлечения внимания к объекту могут быть применены некоторые приемы анимации, к которым относятся: перемещение объекта, изменение его размера,

Подробнее

ДИНАМИЧЕСКОЕ WEB-ПРИЛОЖЕНИЕ

1 ДИНАМИЧЕСКОЕ WEB-ПРИЛОЖЕНИЕ 1. О языке HTML и технологии ASP.NET В этой работе Вы создадите динамическое Web-приложение. Ваше приложение должно быть установлено на сервере. У пользователей-клиентов,

Подробнее

Visual Basic (повторение).

Visual Basic (повторение). Visual Basic является системой объектноориентированного программирования и позволяет создавать графический интерфейс проекта. Интерфейс VB 2010 Основой графического интерфейса

Подробнее

1 Практическое занятие 1. Массивы данных

1 Практическое занятие 1 Массивы данных Цель работы: ознакомиться с понятием массива данных и методами его обработки. 1. Массивы данных Массив данных совокупность значений, объединенная общим названием.

Подробнее

Управление базами данных в Visual Basic

Управление базами данных в Visual Basic 1. Технология ADO.NET VB.NET позволяет отображать, анализировать и изменять информацию в базах данных. Для этой цели имеется модель доступа к данным, которая называется

Подробнее

ЛАБОРАТОРНАЯ РАБОТА 3 РАЗРАБОТКА

ЛАБОРАТОРНАЯ РАБОТА 3 РАЗРАБОТКА 1 Цель занятия Сформировать практические навыки по работе со строками и диалоговыми окнами средствами VBA в приложении Microsoft Word. 2 Общие теоретические сведения 2.1

Подробнее

Знакомство с Visual Studio 2008

Знакомство с Visual Studio 2008 Добро пожаловать в Visual Basic.NET (в дальнейшем будем применять сокращение VB.NET). Это один из удобных языков для быстрого создания Windows приложений, а также Web приложений.

Подробнее

Знакомство с Visual Studio 2010

Знакомство с Visual Studio 2010 Добро пожаловать в Visual Basic.NET (в дальнейшем будем применять сокращение VB.NET). Это один из удобных языков для быстрого создания Windows приложений, а также Web приложений.

Подробнее

ПРИКЛАДНОЕ ПРОГРАММИРОВАНИЕ

Т.С. Крайнова ПРИКЛАДНОЕ ПРОГРАММИРОВАНИЕ Екатеринбург 2016 МИНОБРНАУКИ РОССИИ ФГБОУ ВО «УРАЛЬСКИЙ ГОСУДАРСТВЕННЫЙ ЛЕСОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ» Кафедра информационных технологий и моделирования Т.С. Крайнова

Подробнее

ВВЕДЕНИЕ В VISUAL BASIC FOR APPLICATIONS

2 ВВЕДЕНИЕ В VISUAL BASIC FOR APPLICATIONS Информатика 2 семестр План лекции 1. Макросы и язык VBA 2. Объектно-ориентированные аспекты VBA 3. Переменные и типы данных 4. Ветвления 5. Циклы 6. Функции 7.

Подробнее

Язык интегрированных запросов LINQ

Язык интегрированных запросов LINQ LINQ это аббревиатура от Language-Integrated Query (язык интегрированных запросов). LINQ позволяет, не выходя за пределы синтаксиса Visual Basic, извлекать информацию

Подробнее

Язык Visual Basic. Выполнил: Аюпов Р.Х.

Язык Visual Basic Выполнил: Аюпов Р.Х. План: 1. Что такое Visual Basic for Application? 2. Элементы управления. 3. Элемент управления Label (надпись). 4. Элемент управления TextBox (текстовое поле). 5.

Подробнее

Сумма по цвету ячеек в Excel

Сумма по цвету ячеек в Excel Как я уже писал ранее, профессиональная работа в Excel рано или поздно приведет вас к необходимости написания собственных функций. Довольно часто пользователи «раскрашивают»

Подробнее

Рабочая программа учебной дисциплины

Министерство образования Нижегородской области Государственное бюджетное профессиональное образовательное учреждение «Областной многопрофильный техникум» Рабочая программа учебной дисциплины ОП.11 Информационные

Подробнее

Процедуры, модули и модули классов

УРОК 7 Процедуры, модули и модули классов Содержание урока Понятие процедуры Работа с модулями Использование модулей классов Создание и выполнение процедур Осталось 30 минут В предыдущих уроках было продемонстрировано,

Подробнее

Этапы разработки базы данных

Этапы разработки базы данных С базами данных, как правило, работают не профессионалы, поэтому можно сформулировать следующие требования к БД. Разработчики, при создании БД, должны ориентироваться на эти

Подробнее

Лабораторная работа 6

Лабораторная работа 6 Программирование ХАРЬКОВСКИЙ НАЦИОНАЛЬНЫЙ АВТОМОБИЛЬНО-ДОРОЖНЫЙ УНИВЕРСИТЕТ ФАКУ ЛЬТЕТ МЕХАТРОНИКИ ТР АНСПОРТНЫХ СРЕДСТВ Кафедра информатики МЕТОДИЧЕСКИЕ УКАЗАНИЯ по проведению практических

Подробнее

Виды проектов Visual Studio.Net

Виды проектов Visual Studio.Net предлагает различные шаблоны для ваших начальных проектов. Основные поддерживаемые языки программирования: С#, C++, F#, Visual Basic Нас интересуют шаблоны для программирования

Подробнее

Лекция Автоматизация проектов VBA

Лекция 6 1. Автоматизация проектов VBA Реализации алгоритмов решения задачи табулирования функций с использованием средств VBA, рассмотренные в предыдущих лекциях, мало отличаются от реализаций этих же

Подробнее

Вызов функций Windows API из кода VBA

Вызов функций Windows API из кода VBA Одна из интересных возможностей VBA поддержка функций, которые хранятся в динамически подключаемых библиотеках (Dynamic Link Libraries DLL). В заметке демонстрируются

Подробнее

Работа с процедурами VBA

Работа с процедурами VBA Процедура это последовательность операторов VBA, расположенная в модуле VBA, доступ к которому можно получить с помощью VBE. Модуль может включать любое количество процедур. 1

Подробнее

Условный переход. Урок 9.

Условный переход Урок 9. Препятствие в виде возвышенности нет Умный? да Восхождение Обход Условие В условии 2 числа, или 2 строки, или 2 переменных, или 2 арифметических или строковых выражения сравниваются

Подробнее

Интерфейсы Microsoft Word и Microsoft Excel

Интерфейсы Microsoft Word и Microsoft Excel Общая информация Данные интерфейсы предназначены для передачи атрибутивной информации в документы Microsoft Office 2000 (Word, Excel). 1. Интерфейсы выполнены

Подробнее

2.1. Файлы Именование файлов.

2.1. Файлы. Требования к хранению информации: возможность хранения больших объемов данных информация должна сохраняться после прекращения работы процесса несколько процессов должны иметь одновременный

Подробнее

F.1. Файлы на магнитном диске

F. РАБОТА С ФАЙЛАМИ F.1. Файлы на магнитном диске Данные, размещаемые программой в памяти компьютера, недолговечны; когда питание выключат, они исчезнут, если еще раньше их не сотрет следующая программа.

Подробнее

Лабораторная работа 3

Лабораторная работа 3 Программирование ХАРЬКОВСКИЙ НАЦИОНАЛЬНЫЙ АВТОМОБИЛЬНО-ДОРОЖНЫЙ УНИВЕРСИТЕТ ФАКУ ЛЬТЕТ МЕХАТРОНИКИ ТР АНСПОРТНЫХ СРЕДСТВ Кафедра информатики МЕТОДИЧЕСКИЕ УКАЗАНИЯ по проведению лабораторных

Подробнее

Работа с редактором Visual Basic в среде MS Excel

Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Хабаровская государственная академия экономики

Подробнее

Кафедра информационных систем и технологий

Федеральное агентство по образованию Государственное образовательное учреждение высшего профессионального образования «Нижегородский государственный архитектурно-строительный университет» Кафедра информационных

Подробнее

Работа с макросами в Excel

Работа с макросами в Excel Создание макроса В Excel, так же как и в любом другом пакете Microsoft Office, существует возможность сохранить набор проделанных операций и, в дальнейшем, выполнить его, используя

Подробнее

Программирование в Visual C++

Министерство образования и науки Российской Федерации Южно-Российский государственный политехнический университет (НПИ) имени М.И. Платова Каменский институт (филиал) ЮРГПУ(НПИ) им. М.И. Платова Программирование

Подробнее

3 Теоретическая часть

Лабораторная работа 1 Windows Forms 1 Цель работы Изучить основы построения Windows приложений на Visual Studio.NET на основе событийно-реакционной модели приложений. Обучиться основным приемам использования

Подробнее

1. Выполнение общих процедур

1 Процедуры Процедуры представляют собой часть программного кода, снабженную именем Записав код процедуры один раз (это называется объявлением процедуры), можно заставлять его работать (это называется

Подробнее

О файлах Microsoft Office Word 2007

О файлах Microsoft Office Word 2007 В Microsoft Office 2007 введен новый формат файлов, основанный на языке XML. По умолчанию документы, создаваемые в Word 2007, сохраняются с новым расширением имени файла,

Подробнее

РЕЛЯЦИОННЫЕ БАЗЫ ДАННЫХ

РЕЛЯЦИОННЫЕ БАЗЫ ДАННЫХ 1. О базах данных База данных обеспечивает хранения больших объемов сложных структурированных данных. Кроме выполнения функции надежного хранилища больших объемом данных база данных

Подробнее

Visual Basic с нуля. Глава 7. Работа с текстовыми файлами. Цикл Do…Loop.

Visual Basic с нуля. Глава 7. Работа с текстовыми файлами. Цикл Do…Loop.

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

Текстовой файл, собственно по названию, содержит в себе текстовые символы, ну
и символы типа возврат каретки или перевод строки. Традиционно они имеют расширение
.txt для текста, .dat для данных, .bat для исполняемых
(командных) файлов, ну Windows еще использует .ini, .log, .inf.
Читать и записывать их надо последовательно, символ за символом, начиная с первого.

Итак, чтобы
что-нибудь сделать с файлом, прежде всего, его надо открыть.

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

Для
открытия файла используется оператор Open. Синтаксис его такой:

Open
путь For режим As #номер файла

Примечание: для открытия файлов прямого доступа, или двоичных файлов оператор
Open содержит еще кое-какие аргументы, но сейчас мы их не используем и опускаем.

Все указанные
аргументы должны обязательно присутствовать:
путь — это полный путь к открываемому
файлу — (строковое выражение) пишется в кавычках, может состоять из нескольких
строк, соединенных знаком конкатенации &. (Например «c:\MyText\referat.txt»
или «c:\Mytext\» & «referat.txt»)
режим — способ открытия файла и представляет
собой ключевые слова. В этой главе му будем использовать Input для считывания
данных из файла, Output — для записи данных в файл, и Append
для добавления данных в файл. В режиме Input можно еще раз открыть уже
открытый файл под другим номером, не закрывая его, в режимах Output и
Append надо сначала закрыть файл, а потом открыть его снова.
#номер файла — это всего лишь номер,
по которому VB индентефицирает открытый файл. Он может
быть любой от #1 до #255. Однако, лучше всего использовать функцию FreeFile
(см. в примере), которая сразу возвратит свободный номер в переменную, и
тебе нет нужды искать по своему коду, открыт ли у тебя файл под номером, например
#3.

Кстати сказать,
после того, как передача или прием данных в (из) файл(а) будут закончены, его
надо закрыть, делается это оператором Close. Если этот оператор написать
без всяких аргументов, он закроет все открытые файлы. Если же нам надо закрыть
файл, скажем номер 2, то пишем Close #2. Попробуем работать с файлами
на примерах:


СЧИТЫВАНИЕ
из текстового файла.

Создадим новый
.exe проект в какой-нибудь папке и в ту же папку положим небольшой текстовой
файл (у меня например «Справка.txt»). На форме разместим кнопку Command1
и текстовое поле Text1. В свойствах Text1 свойство Multiline
поставим в True (чтобы текст переносился по строкам), а свойство ScrollBars
в 2 — Вертикаль (чтобы можно было прокручивать текст, если он не уместился)
смотри рис.15.

Рисунок 15.
Откроем окно
кода и в (Genarel) объявим переменные F для хранения номера свободного
файла, MyText и AllMyText
— для хранения считываемого текста:

Dim
F As Long

Dim MyText As String

Dim AllMyText As String

Создадим прцедуру
Command1_Click() (щелкнув мышью по Command1 в выпадающем списке
в окне кодов в верхнем левом поле, там где (General)). В теле образовавщейся
процедуры. Можно также щелкнуть два раза по кнопке Command1 в режиме Объект
и перейти в режим Код — там появится нужная нам процедура.

Private Sub
Command1_Click()

Напишем для
определения номера свободного файла

F = FreeFile

и откроем файл
для чтения

Open App.Path
& "\Справка.txt" For Input As
#F

Обратите
внимание,
что
для указания пути файла мы опять используем функцию App.Path. Если бы
мы написали просто «c:\VB\example\Справка.txt», то при переносе нашей
паки с программой на другой диск или компьютер этот путь оказался бы ложным.
А функция App.Path всегда возвращает путь, где лежит наша программа.
Только перед именем файла не забывайте ставить обратный слеж (\), иначе запись
работать не будет.
Для считывания строки текста существует оператор
Line Input
. Попробуем считать с его помощью содержимое файла в переменную
MyText :

Line Input
#F, MyText

Передадим значение
MyText переменной в Text1, чтобы увидеть, что мы там считали:

Text1.Text = MyText

затем закроем
файл

Close
#F
End Sub

и запустим
нашу программу. Когда мы нажмем кнопку Command1, то в Text1 появиться
содержимое файла «Справка.txt». Проблема только в том, что, если,(
как и случилось в нашем файле «Справка.txt»), при создании текста
применялось нажатие кнопки ENTER (перевод строки), то оператор Line Input считает
текст до этого знака и все, потому, что строка кончилась. Чтобы этого избежать,
мы применим цикл и будем считывать строки до конца файла. Для этого придется
разобраться с новым для нас циклом по условию Do… Loop.


Цикл
по условию Do…Loop.

Это очень простая
вещь. Цикл работает до тех пор, пока не выполнится какое-нибудь условие. Например
мы будем увеличивать переменную X до тех пор, пока оне не станет равной, например,
100. Для этого применяется аргумент Until:

Do
Until x>=100

x=x+1

Loop

при этом когда
цикл закончится x будет равно 100. Можно записать его по другому, при этом смысл
работы цикла не изменится:

Do

x = x + 1
Loop Until x >=100

Можно цикл
записать наоборот, и он будеn выполняться до тех пор, пока соблюдается какое-то
условие. Для этого применяется аргумент While (делать, пока…) :

Do
While
x <
100

x = x + 1
Loop

или же:

Do

x = x + 1
Loop While x < 100

Во всех четырех
случаях результат будет один. Цикл остановится, когда X=100. Только надо обращаться
с ними аккуратно. Если ты поставишь условие, которое изначально ложно, цикл
не выполнится ни разу, и наоборот если условие будет истинно всегда, возникнет
бесконечный цикл и программа по-сути зависнет. Вот этот цикл не будет выполняться:

Do
While

x =100

x = x + 1

Loop

а этот будет
бесконечным

Do
Until x < 0

x = x + 1

Loop

Ну
а теперь используем наш цикл для считывания строк из файла до тех пор, пока
не настанет конец файла. Чтобы узнать, достигнут ли конец файла, можно использовать
функцию EOF(номер файла), которая примет значение True,
как только конец файла будет достигнут. Теперь переделаем нашу процедуру следующим
образом:

Private Sub
Command1_Click() '1

Text1.Text = "" '2

F = FreeFile '3
Open App.Path & "\Справка.txt" For
Input As #F '4
Do Until EOF(F) '5
Line Input #F, MyText '6

Text1.Text = Text1.Text & MyText & vbCrLf '7
Loop '8

Close #F
'9
End Sub '10

По строкам
здесь:
1 — объявление нашей процедуры

2 — очистка Text1

3 — присваиваем переменной F свободный номер файла

4 — открываем файл «Справка.txt» для последовательного чтения

5 — цикл по условию: до тех пор пока не конец файла

6 — DO в цикле считываем каждую строчку

7 — Присоединяем очередную строку к Text1 и ставим перевод строки (vbCrLf) чтоб
красиво было

8 — LOOP завершаем цикл

9 — закрываем наш файл

10- конец процедуры
Ну вот и готово.

Сейчас
мы считаем файл другим способом, с помощью функции Input. Синтаксис ее
такой:
Input(число, [#]номерФайла)

Смысл ее такой,
что она из файла [#]номерФайла, открытого в режиме Input считывает
число
знаков. Мы используем ее также, как оператор Line Input, только
считывать будем не по одной строчке, а по одному символу, и собирать их будем
в переменной AllMyText, значение которой присвоим потом текстбоксу Text1.
Поместим на нашу форму еще одну кнопку Command2 (свойство Caption
присвоим «Функция Input») и создадим для нее прцедуру, где и используем
функцию Input.

Private Sub Command2_Click()

F = FreeFile
Open App.Path & "\Справка.txt" For
Input As #F
Do Until EOF(F)

MyText = Input(1, #F)

AllMyText = AllMyText & MyText
Loop

Close #F

Text1.Text = AllMyText
End Sub

Здесь все почти
в точности, как и в предыдущем примере, только суть несколько другая.

Ну
и в дополнение попробуем прочитать наш файл с помощью оператора Input #.
Это не самая лучшая идея, так как эта инструкция считывает файл, желательно,
записанный с оператора Write #. Синтаксис такой:

Input #номерФайла,
списокПеременных

а смысл в том,
что она из последовательно открытого в режиме Input файла с номером #номерФайла
считывает в переменные списокПеременных данные, разделенные запятыми.
Этот оператор для считывания обычных текстов не годится, а вот данных, а потом
использование их в переменных — сколько угодно. Но мы попробуем считать все-таки
этот наш файл и этим оператором.

Опять кладем на форму кнопку Command3 и там ваяем по тому же принципу:

Private Sub
Command3_Click()

F = FreeFile
Open App.Path & "\Справка.txt" For
Input As #F
Do Until EOF(F)
Input #F, MyText

AllMyText = AllMyText & ", " & MyText
Loop

Close #F

Text1.Text = AllMyText
End Sub

Это, конечно,
некорректное применение оператора, но мы вернемся к нему, когда будем рассматривать
запись в файл с помощью оператора Write #. Как ты видишь, запятые не
выводятся, приходится их запихивать насильно, не всегда к месту, но ради полноты,
я посчитал надо показать и это. Все, теперь запись.


ЗАПИСЬ
в текстовой файл.

Как и для считывания,
прежде, чем записывать в текстовой файл, нужно получить к нему доступ. Для этого
используем оператор Open с ключевым словом Output.

Добавим на форму еще кнопку Command4. Создадим для нее процедуру и напишем
там:

Private Sub
Command4_Click()

F = FreeFile
Open App.Path & "\Запись.txt" For
Output As #F

Таким
образом мы открыли файл с последовательным доступом, который называется «Запись.txt»
в нашей текущей директории под свободным номером #F, для записи (For
Output
). При этом, если такого файла не существует, он будет создан, а если
существует и в нем что-то записано, то это что-то будет стерто, а вместо будет
помещены наши новые данные, которые мы сейчас будем записывать, например, скажем
с помощью оператора Print #. Записать его можно аналогично оператору
считывания Line Input:

Print #F, Text1.Text

То есть, мы
записываем содержимое нашего текстбокса (если там что-то есть. Считайте в текстбокс
Text1 наш файл Справка.txt нажатием одной из кнопок Command1-Command3)
в файл «Запись.txt». Затем закрываем файл и конец процедуре:

Close #F
End Sub

Ты можешь открыть
этот файл с помощью Виндусового Блокнота или в любом текстовом редакторе и посмотреть
его. Или напиши в нашей программе свой код, чтоб считать этот файл в Text1
и сразу его посмотреть.

В принципе, если тебе это надо, оператор Print # может форматировать
текст, т.е. менять отступы от края, вставлять пробелы, но только между переменными,
а не конечно в середину, скажем, нашего текста. Для этого используется аргументы
Spc (количество пробелов) для введения пробелов и Tab(номер
столбца
)
для вывода данных по столбцам. Положим на форму еще текстбокс
Text2 и кнопку Command5 и в ее процедуре напишем код для форматированной
записи. Потом считаем наши записи в Text2 с помощью оператора Line
Input
. С этим, я думаю, ты разберешся сам. (Не забудь поставить свойства
Text2:свойство Multiline поставим в True, а свойство ScrollBars
в 2 — Вертикаль.

Private Sub Command5_Click()

F = FreeFile
Open App.Path & "\Запись.txt" For
Output As #F

'печатаем тексты с 15-й позиции
Print #F, Spc(15);
"Я вывожу этот текст"
Print #F, Spc(15);
"очень красиво"
Print #F, Spc(15);
"потому, что я настоящий"
Print #F, Spc(15);
"ПРОГРАММИСТ"
'печатаем пустую строку
Print #F,
'печатаем тексты в 30-ем, 40-м и 50-м стобцах соответственно
Print #F, Tab(30);
"тридцатый столбец"
Print #F, Tab(40);
"сороковой столбец"
Print #F, Tab(50);
"пятидесятый столбец"
'если оператор завершать точкой с запятой, то перехода
на следующую строку не будет
Print #F, Spc(15);
"Печатаю текст";
Print #F, Spc(15);
"не очень хорошо"
' и наконец несколько текстов в одном операторе
Print #F, Spc(10);
"10 пробелов"; Tab(30);
"30-й столбец+ 10 пробелов в начале"; Spc(5);
"Пять пробелов"
Close #F

'считаем записанный текст в Text2

Text2.Text = ""

MyText = ""

F = FreeFile
Open App.Path & "\Запись.txt"
For Input As #F
Do Until EOF(F)
Line Input #F, MyText

Text2.Text = Text2.Text & MyText & vbCrLf
Loop
Close #F
End Sub

Теперь
запишем чего-нибудь в файл с помощью оператора Write #, а потом, уже
корректно считаем это оператором Input # о котором мы уже говорили в
этой главе. С помощью оператора Write # удобно записывать данные твоей
программы. Есть две особенности. Первое — данные разделяются разделителем (запятой),
и второе — данные надо считывать в переменные того же типа, что и запись в файле
( то есть число — в число, дату в дату, стоку в строку и т.п., иначе возникнет
ошибка) и представляются они в файле в достаточно своеобразном виде — каждый
в своем формате. Сейчас разберем это на примере, я так думаю, будет понятнее.
Положим еще одну кнопку Command6 на форму и в ней объявим переменные четырех
разных типов.

Private Sub Command6_Click()
Dim Chislo As Long
' числовая
Dim Stroka As String
' строковая
Dim Logika As Boolean
' логическая
Dim DDate As Date'
дата (не путайте с Data)

Надо заметить, что число
выводится в файл как число, строка — как строка в кавычках, логическая переменная
может принимать только два значения Да и Нет в формате #False# или #True#, а
дата в виде #2004-07-20# , что соответствует 20 июля 2004 года. Дальше присваиваем
переменным какие-нибудь значения в соответствующем формате

Chislo = 15

Stroka = "пятнадцать"

Logika = True

DDate = #7/20/2004#

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

F = FreeFile
Open App.Path & "\Запись.txt"
For Output As #F
Write #F, Chislo; Stroka
Write #F, Logika; DDate
Close #F

'теперь считаем данные с помощью оператора Input#

F = FreeFile
Open App.Path & "\Запись.txt" For
Input As #F
Input #F, Chislo, Stroka, Logika, DDate
'и выведем их в Text2

Text2.Text = Chislo & " " & Stroka & " " &
Logika & " " & DDate
Close #F
End Sub

Сейчас, когда ты запустишь
программу, ты увидишь, что в Text2 данные вывелись в очень достойном
виде, но это потому, что мы используем для считывания оператор Input #.
Если же ты откроешь файл » Запись» в блокноте или считаешь файл с
помощью оператора Line Input, то увидишь несколько иную картину, вот
такую:

15,»пятнадцать»

#TRUE#,#2004-07-20#

Поэтому делать текстовые
файлы для чтения их в других приложения бессмысленно. Но использовать операторы
Write# — Input# внутри программы для работы с собстенными данными очень
удобно.


Добавление
данных в текстовой файл.

Чтобы добавить новые данные
в текстовой файл и при этом не стирать имеющихся там, надо просто открыть файл
с ключевым словом Append. Новые данные будут записываться в конец файла.
Быстренько разберем это на примере. Для этого положим на форму последнюю кнопку
Command7 и в ней напишем код:

Private Sub Command7_Click()

Text2.Text = ""

MyText = ""

F = FreeFile
'открываем файл для дабавления
Open App.Path & "\Запись.txt" For
Append As #F
Print #F, Spc(15);
"Я добавляю этот текст снова и снова"
Close #F

'считаем записанный текст в Text2

F = FreeFile
Open App.Path & "\Запись.txt" For
Input As #F
Do Until EOF(F)
Line Input #F, MyText

Text2.Text = Text2.Text & MyText & vbCrLf
Loop
Close #F
End Sub

Ну вот и все, что я хотел
сообщить тебе сегодня про текстовые файлы. Ну нам с файлами еще работать и работать.
. Исходник можешь скачать вверху страницы.




Copyright
©
2004 4us

Сайт создан в системе uCoz

Файл CS – чем открыть, описание формата

Чем открыть, описание – 3 формата файла
  1. Файл исходного кода на языке C# — Скрипты, исходный код
  2. Пользовательский скрипт для игры GTA — Файлы игр
  3. Файл цветовой палитры ColorSchemer Studio — Файлы данных

1. Файл исходного кода на языке C#

C# Source Code File

Тип данных: Текстовый файл


Разработчик: Microsoft

Подробное описание

Файл CS содержит исходный код на языке программирования C#, который используется при разработке приложений для платформы Microsoft .NET Framework и других прикладных программ. Открыть файл можно с помощью простого текстового редактора, но для работы с исходным кодом удобнее применять специализированное программное обеспечение, например, Microsoft Visual Studio.

Как, чем открыть файл .cs?

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

2. Пользовательский скрипт для игры GTA

CLEO Custom Script

Тип данных: Неизвестно


Разработчик: Rockstar Games

Подробное описание

Пользовательский скрипт, позволяющий расширить возможности компьютерной игры Grand Theft Auto: San Andreas. Скрипты для GTA могут быть написаны с помощью утилиты Sanny Builder, либо аналогичных приложений. Для запуска пользовательских сценариев необходимо наличие библиотеки CLEO, которая улучшает скриптовый движок игры. При этом CS-файлы должны быть размещены в папке CLEO каталога с игрой.

Как, чем открыть файл .cs?

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

3. Файл цветовой палитры ColorSchemer Studio

ColorSchemer Studio Color Scheme

Тип данных: Двоичный файл


Разработчик: CHROMAom

Подробное описание

Файл содержит пользовательскую цветовую палитру, созданную в программе для подбора цветов и генерации цветовых схем ColorSchemer Studio. Цветовая палитра включает набор схожих по спектру или сочетающихся цветов и может быть применена в печатных изданиях, дизайне интерьеров, на веб-сайтах и т.д.

Как, чем открыть файл .cs?

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

Для более точного определения формата и программ для открытия файла используйте функцию определения формата файла по расширению и по данным (заголовку) файла.

Файл AssemblyInfo.cs в Visual Studio 2005

Читайте также








Компоновка .NET-приложений с помощью Visual Studio 2005



Компоновка .NET-приложений с помощью Visual Studio 2005
Если вы являетесь профессиональным разработчиком программного обеспечения .NET, очень велика вероятность того, что ваш работодатель согласится купить для вас лучшую интегрированную систему разработки от Microsoft – Visual Studio 2005






Возможности Visual Studio 2005



Возможности Visual Studio 2005
Как и следует ожидать, Visual Studio 2005 содержит все необходимые средства проектирования, средства доступа к базам данных, утилиты обзора проектов и объектов, а также интегрированную систему справки. Но, в отличие от средств разработки, которые были






Пространство имен по умолчанию в Visual Studio 2005



Пространство имен по умолчанию в Visual Studio 2005
В заключение нашего обсуждения пространств имен следует отметить, что при создании нового C#-проекта в Visual Studio 2005 имя пространства имен вашего приложения по умолчанию будет совпадать с именем проекта. При вставке новых






Отладка необработанных исключений в Visual Studio 2005



Отладка необработанных исключений в Visual Studio 2005
В завершение нашего обсуждения следует заметить, что в Visual Studio 2005 предлагается целый ряд инструментов, которые помогают выполнить отладку программ с необработанными пользовательскими исключениями. Снова предположим, что






Реализация интерфейсов в Visual Studio 2005



Реализация интерфейсов в Visual Studio 2005
Программирование на основе интерфейсов – это мощная техника программирования, но процесс реализации интерфейсов может предполагать ввод программного кода вручную в очень больших объемах. Поскольку интерфейсы представляют собой






Упрощенная регистрация событий в Visual Studio 2005



Упрощенная регистрация событий в Visual Studio 2005
В Visual Studio .NET 2003 и Visual Studio 2005 предлагается помощь в процессе регистрации обработчиков событий. При вводе += в окне программного кода появляется окно IntelliSense, предлагающее назвать клавишу ‹Tab›, чтобы автоматически ввести






Файлы конфигурации и Visual Studio 2005



Файлы конфигурации и Visual Studio 2005
Вы, конечно, можете всегда создавать XML-файлы конфигурации вручную с помощью своего любимого текстового редактора, но Visual Studio 2005 позволяет создать файл конфигурации в процессе построения программы-клиента. Для примера загрузите в Visual Studio






Назначение строгого имени в Visual Studio 2005



Назначение строгого имени в Visual Studio 2005
Перед тем как установить CarLibrary.dll в структуру GAC, заметим, что Visual Studio 2005 позволяет указать место расположения файла *.snk на странице Properties (Свойства) проекта (в Visual Studio 2005 такой подход оказывается более предпочтительным, поскольку при






Создание Windows-приложений в Visual Studio 2005



Создание Windows-приложений в Visual Studio 2005
В Visual Studio 2005 предлагается специальный шаблон для создания приложений Windows Forms. Выбрав шаблон Windows Application при создании проекта, вы получите не только объект приложения с соответствующим методом Main(), но и подходящий исходный тип,






Генерирование ресурсов в Visual Studio 2005



Генерирование ресурсов в Visual Studio 2005
С файлами *.resx и *.resources можно, конечно, работать вручную в командной строке, но Visual Studio 2005 предлагает средства автоматизации создания и встраивания ресурсов в проект. Для примера создайте новое приложение Windows Forms, назвав его MyResourcesWinApp.






Добавление элементов управления в форму в Visual Studio 2005



Добавление элементов управления в форму в Visual Studio 2005
Теперь, когда вы понимаете суть процесса добавления элементов управления в форму, давайте посмотрим, как Visual Studio 2005 может автоматизировать этот процесс. Создайте новый проект Windows Application, выбрав дня него произвольное






Соединение с базой данных в Visual Studio 2005



Соединение с базой данных в Visual Studio 2005
Итак, база данных Cars создана, и вы можете установить соединение с этой базой данных из Visual Studio 2005. Это позволит просматривать и редактировать различные объекты базы данных в среде разработки Visual Studio 2005. Используя меню View, откройте окно






Создание Web-сервиса XML в Visual Studio 2005



Создание Web-сервиса XML в Visual Studio 2005
Создав Web-сервис XML вручную, давайте посмотрим, как это делается в Visual Studio 2005. Выбрав File?New?Web Site из меню, создайте новый C#-проект Web-сервиса XML с именем MagicEightBallWebService и сохраните этот проект на своем локальном диске (рис. 25.3).Замечание. Как и в






Генерирование программного кода агента в Visual Studio 2005



Генерирование программного кода агента в Visual Studio 2005
Утилита wsdl.exe, конечно, предлагает целый ряд аргументов командной строки, которые позволяют контролировать результат генерирования класса агента, но Visual Studio 2005 позволяет быстро сгенерировать файл агента, используя






Взаимодействие с UDDI в Visual Studio 2005



Взаимодействие с UDDI в Visual Studio 2005
Вспомните о том, что диалоговое окно Add Web Reference позволяет не только получить список всех Web-сервисов XML, размещенных на вашей локальной машине (а также по известному URL), но и предъявить запрос к UDDI-серверу. Как правило, вы имеете на выбор






Что нового в Visual Studio .NET 2005



Что нового в Visual Studio .NET 2005
Если у вас уже был опыт программирования под Visual Studio .NET 2003, то вы заметите, что на панели инструментов появились новые элементы управления. Они будут рассматриваться в главе, посвященной элементам управления. При разработке дизайна приложения














Поиск в файлах — Visual Studio (Windows)

  • 6 минут на чтение

В этой статье

Найти в файлах позволяет выполнять поиск в указанном наборе файлов. Совпадения, найденные Visual Studio, перечислены в окне Результаты поиска в IDE. Вид результатов зависит от параметров, которые вы выбираете на вкладке Найти в файлах диалогового окна Найти и заменить .

Важно

Если вы используете Visual Studio 2019 версии 16.6 или более ранней версии, диалоговое окно «Найти и заменить» может не выглядеть так, как здесь. Переключитесь на версию этой страницы для Visual Studio 2017, чтобы получить описания, которые будут соответствовать тому, что вы видите на экране.

Как отобразить Поиск в файлах

Используйте следующие шаги, чтобы открыть диалоговое окно «Найти и заменить », или нажмите Ctrl + Shift + F .

  1. В строке меню выберите Изменить > Найти и заменить .

  2. Выберите Найти в файлах во всплывающем меню.

Чтобы отменить операцию поиска, нажмите Ctrl + Break .

Примечание

Инструмент поиска и замены не выполняет поиск в каталогах с атрибутом Hidden или System .

Что найду:

Чтобы найти новую текстовую строку или выражение, укажите его в поле Найти .

Поле поиска

Чтобы найти новую текстовую строку или выражение, укажите его в поле поиска. Чтобы найти любую из 20 строк, которые вы искали в последний раз, откройте раскрывающийся список и выберите строку.

Вы можете выбрать или снять следующие опции:

  • Учитывать регистр — используйте этот параметр, чтобы при поиске учитывался регистр.

  • Совпадение целого слова — используйте этот параметр, чтобы убедиться, что поиск возвращает только совпадения целого слова.

  • Использовать регулярные выражения — используйте этот параметр, чтобы использовать специальные обозначения, которые определяют шаблоны текста для сопоставления в поле поиска (или в текстовом поле Заменить ). Список этих обозначений см. В разделе Использование регулярных выражений в Visual Studio.

    Важно

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

Посмотреть

Вариант, который вы выбираете в раскрывающемся списке Искать в , определяет, будет ли Найти в файлах выполнять поиск во всей рабочей области, во всем решении, в текущем проекте, текущем каталоге, во всех открытых документах или в текущем документе.

Вы также можете использовать соседнюю кнопку Обзор (…) , чтобы найти место, где вы хотите выполнить поиск. Еще лучше, если вы уже указали каталог, эта кнопка добавит новый каталог вместо того, чтобы заменить его. Например, если ваше значение «Искать в» было «. \ Code», вы можете нажать кнопку Обзор (…) и перейти к папке с именем «Общий код». В поле Browse (…) теперь будет отображаться «. \ Code;. \ Shared Code», и при выполнении команды «Найти» будет выполнен поиск в обеих этих папках.

Чтобы уточнить поиск, вы можете выбрать или снять следующие опции:

  • Включить внешние элементы — Используйте этот параметр, чтобы включить внешние элементы, такие как файлы, такие как «windows.h», на которые вы можете ссылаться, но не являются частью решения.
  • Включить разные файлы — используйте этот параметр, чтобы включить разные файлы, например файлы, которые вы открыли, но не являются частью решения.

Типы файлов

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

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

Добавить результаты

Используйте этот параметр, чтобы добавить результаты текущего поиска к результатам предыдущего поиска.

Построитель выражений

Если вы хотите использовать регулярные выражения в строке поиска, нажмите соседнюю кнопку Построитель выражений , которая находится рядом с полем поиска.Дополнительные сведения см. В разделе Использование регулярных выражений в Visual Studio.

Примечание

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

Просмотр:

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

Выберите область поиска из списка или щелкните файл Browse (…) Кнопка для отображения диалогового окна Выбор папок поиска и ввода собственного набора каталогов. Вы также можете ввести путь прямо в поле Посмотрите в поле .

Предупреждение

Если вы выберете вариант Все решение или Текущий проект , поиск файлов проекта и решения не выполняется. Если вы хотите просмотреть файлы проекта, выберите папку поиска.

Примечание

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

Включить вложенные папки

Указывает, что будет выполняться поиск во вложенных папках Искать в папке .

Найти опции

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

Спичечный футляр

При выборе результатов поиска поиск будет чувствителен к регистру

Совпадение целого слова

При выборе окна Результаты поиска будут возвращать только совпадения целых слов.

Использовать регулярные выражения

Если этот флажок установлен, вы можете использовать специальные обозначения для определения шаблонов текста для сопоставления в текстовых полях Найдите то, что или Заменить на . Список этих обозначений см. В разделе Использование регулярных выражений в Visual Studio.

Посмотрите на эти типы файлов

В этом списке указаны типы файлов для поиска в каталогах Look in . Если это поле не заполнено, поиск будет выполняться во всех файлах в каталогах Look в .

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

Варианты результатов

Вы можете развернуть или свернуть раздел Параметры результатов . Следующие параметры в Список результатов в могут быть выбраны или очищены:

Найти результаты 1 окно

При выборе результаты текущего поиска заменяют содержимое окна Результаты поиска 1 .Это окно открывается автоматически для отображения результатов поиска. Чтобы открыть это окно вручную, выберите Other Windows из меню View , а затем выберите Find Results 1 .

Найти результаты 2 окно

Если этот параметр выбран, результаты текущего поиска заменят содержимое окна Результаты поиска 2 . Это окно открывается автоматически для отображения результатов поиска. Чтобы открыть это окно вручную, выберите Other Windows из меню View и выберите Find Results 2 .

Подсказка

Вы можете переключаться между окнами результатов, нажимая Alt + 1 или Alt + 2 .

Найти таблицу результатов

Отображает результаты поиска в формате таблицы, а не в текстовом списке.

Приложить результаты

Добавляет результаты поиска к результатам предыдущего поиска.

Отображать только имена файлов

Отображает список файлов, содержащих результаты поиска, а не сами результаты поиска.

Множественные поиски

Вы можете сохранить результаты одного поиска, пока выполняете другие поиски. Это позволяет легко сравнивать результаты и просматривать их рядом.

Чтобы сохранить несколько результатов поиска, нажимайте кнопку Сохранить результаты после каждого поиска. Затем, когда вы ищете что-то еще, результаты отображаются на новой вкладке. Вы можете сохранить результаты до пяти поисков. Если у вас уже отображается пять результатов поиска, при следующем поиске будет повторно использована самая старая вкладка результатов поиска.

См. Также

Что такое решения и проекты Visual Studio? — Visual Studio (Windows)

  • 4 минуты на чтение

В этой статье

Из этой статьи вы узнаете, что такое проект и решение в Visual Studio. В нем также кратко рассказывается об окне инструмента обозревателя решений и о том, как создать новый проект.

Проектов

Когда вы создаете приложение или веб-сайт в Visual Studio, вы начинаете с проекта . В логическом смысле проект содержит все файлы, которые скомпилированы в исполняемый файл, библиотеку или веб-сайт. Эти файлы могут включать исходный код, значки, изображения, файлы данных и так далее. Проект также содержит настройки компилятора и другие файлы конфигурации, которые могут понадобиться различным службам или компонентам, с которыми взаимодействует ваша программа.

Файл проекта

Visual Studio использует MSBuild для сборки каждого проекта в решении, и каждый проект содержит файл проекта MSBuild.Расширение файла отражает тип проекта, например, проект C # (.csproj), проект Visual Basic (.vbproj) или проект базы данных (.dbproj). Файл проекта — это XML-документ, содержащий всю информацию и инструкции, необходимые MSBuild для создания вашего проекта, включая контент, требования к платформе, информацию о версиях, настройки веб-сервера или сервера базы данных и задачи, которые необходимо выполнить.

Файлы проекта основаны на XML-схеме MSBuild. Чтобы просмотреть содержимое новых файлов проекта в стиле sdk в Visual Studio, щелкните правой кнопкой мыши узел проекта в Solution Explorer и выберите Edit .Чтобы просмотреть содержимое .NET Framework и других проектов этого стиля, сначала выгрузите проект (щелкните правой кнопкой мыши узел проекта в Solution Explorer и выберите Unload Project ). Затем щелкните проект правой кнопкой мыши и выберите Edit .

Создание новых проектов

Самый простой способ создать новый проект — использовать шаблон проекта для нужного вам типа проекта. Шаблон проекта включает в себя базовый набор предварительно сгенерированных файлов кода, файлов конфигурации, ресурсов и настроек.Используйте File > New > Project для выбора шаблона проекта. Для получения дополнительной информации см. Создание нового проекта.

Вы также можете создать собственный шаблон проекта, который можно использовать для создания новых проектов. Дополнительные сведения см. В разделе Создание шаблонов проектов и элементов.

Когда вы создаете новый проект, Visual Studio сохраняет его в расположение по умолчанию, % USERPROFILE% \ source \ repos . Чтобы изменить это местоположение, перейдите к Tools > Options > Projects and Solutions > Locations .Для получения дополнительной информации см. Диалоговое окно «Параметры»: «Проекты и решения»> «Местоположение».

Решения

Проект содержится в решении . Несмотря на свое название, решение не является «ответом». Это просто контейнер для одного или нескольких связанных проектов вместе с информацией о сборке, настройками окна Visual Studio и любыми другими файлами, не связанными с конкретным проектом.

Файл решения

Visual Studio использует два типа файлов (.sln и .suo ) для хранения настроек для решений:

Добавочный номер Имя Описание
.sln Решение Visual Studio Организует проекты, элементы проекта и элементы решения в решении.
.suo Параметры пользователя решения Хранит настройки и настройки уровня пользователя, например точки останова.

Важно

Решение описывается текстовым файлом (расширение .sln ) в собственном уникальном формате; он не предназначен для редактирования вручную. И наоборот, файл .suo — это скрытый файл, который не отображается при настройках проводника по умолчанию. Чтобы отобразить скрытые файлы, в меню Просмотр в проводнике установите флажок Скрытые элементы .

Папка решения

«Папка решения» — это виртуальная папка, которая находится только в Solution Explorer , где вы можете использовать ее для группировки проектов в решении.Если вы хотите найти файл решения на компьютере, перейдите к Tools > Options > Projects and Solutions > Locations . Для получения дополнительной информации см. Диалоговое окно «Параметры»: «Проекты и решения»> «Местоположение».

Обозреватель решений

После создания нового проекта вы можете использовать Solution Explorer для просмотра и управления проектом и решением и связанными с ними элементами. На следующем рисунке показан обозреватель решений Solution Explorer с решением C #, содержащим два проекта:

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

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

Многие команды меню доступны из контекстного меню, вызываемого правой кнопкой мыши по различным элементам в Обозреватель решений . Эти команды включают создание проекта, управление пакетами NuGet, добавление ссылки, переименование файла и запуск тестов, и это лишь некоторые из них.Дополнительные сведения см. В разделе Как использовать обозреватель решений.

Для проектов ASP.NET Core вы можете настроить способ вложения файлов в Обозреватель решений . Дополнительные сведения см. В разделе Настройка вложенности файлов в обозревателе решений.

Подсказка

Если вы закрыли обозреватель решений и хотите открыть его снова, выберите Просмотр > Обозреватель решений в строке меню или нажмите Ctrl + Alt + L . И, если вы закрыли боковые вкладки и хотите восстановить их по умолчанию, выберите Window > Reset Window Layout в строке меню.

См. Также

Управление файлами и каталогами — Visual Basic

  • 10 минут на чтение

В этой статье

Это пошаговое руководство представляет собой введение в основы файлового ввода-вывода в Visual Basic. В нем описывается, как создать небольшое приложение, которое перечисляет и проверяет текстовые файлы в каталоге.Для каждого выбранного текстового файла приложение предоставляет атрибуты файла и первую строку содержимого. Есть возможность записывать информацию в файл журнала.

В этом пошаговом руководстве используются элементы My.Computer.FileSystem Object , которые доступны в Visual Basic. Смотрите FileSystem для получения дополнительной информации. В конце пошагового руководства предоставляется эквивалентный пример, в котором используются классы из пространства имен System.IO.

Примечание

В следующих инструкциях на вашем компьютере могут отображаться разные имена или расположение некоторых элементов пользовательского интерфейса Visual Studio.Выпуск Visual Studio, который у вас есть, и используемые вами параметры определяют эти элементы. Для получения дополнительной информации см. Персонализация IDE.

Для создания проекта

  1. В меню File щелкните New Project .

    Появится диалоговое окно New Project .

  2. На панели Установленные шаблоны разверните Visual Basic , а затем щелкните Windows . На панели Шаблоны посередине щелкните Приложение Windows Forms .

  3. В поле Имя введите FileExplorer , чтобы задать имя проекта, а затем нажмите ОК .

    Visual Studio добавляет проект в Обозреватель решений , и открывается конструктор Windows Forms.

  4. Добавьте в форму элементы управления из следующей таблицы и установите соответствующие значения для их свойств.

    Контроль Недвижимость Значение
    ListBox Имя filesListBox
    Кнопка Имя

    Текст

    browseButton

    Просмотр

    Кнопка Имя

    Текст

    exploreButton

    Проверить

    CheckBox Имя

    Текст

    saveCheckBox

    Сохранить результаты

    FolderBrowserDialog Имя FolderBrowserDialog1

Для выбора папки и списка файлов в папке

  1. Создайте обработчик событий Click для browseButton , дважды щелкнув элемент управления в форме.Откроется редактор кода.

  2. Добавьте следующий код в обработчик событий Click .

      Если FolderBrowserDialog1.ShowDialog () = DialogResult.OK Тогда
        'Список файлов в папке.
        ListFiles (FolderBrowserDialog1.SelectedPath)
    Конец, если
      

    Вызов FolderBrowserDialog1.ShowDialog открывает диалоговое окно «Обзор папки ». После того, как пользователь нажимает OK , свойство SelectedPath отправляется в качестве аргумента методу ListFiles , который добавляется на следующем шаге.

  3. Добавьте следующий метод ListFiles .

      Private Sub ListFiles (ByVal folderPath как строка)
        filesListBox.Items.Clear ()
    
        Dim fileNames = My.Computer.FileSystem.GetFiles (
            folderPath, FileIO.SearchOption.SearchTopLevelOnly, "* .txt")
    
        Для каждого имени файла в виде строки в именах файлов
            filesListBox.Items.Add (имя_файла)
        Следующий
    Конец подписки
      

    Этот код сначала очищает ListBox .

    Затем метод GetFiles извлекает набор строк, по одной для каждого файла в каталоге.Метод GetFiles принимает аргумент шаблона поиска для извлечения файлов, соответствующих определенному шаблону. В этом примере возвращаются только файлы с расширением .txt.

    Строки, возвращаемые методом GetFiles , затем добавляются в ListBox .

  4. Запустить приложение. Нажмите кнопку Обзор . В диалоговом окне «Обзор папки » перейдите к папке, содержащей файлы .txt, затем выберите папку и нажмите ОК .

    ListBox содержит список файлов .txt в выбранной папке.

  5. Остановить выполнение приложения.

Для получения атрибутов файла и содержимого из текстового файла

  1. Создайте обработчик событий Click для exploreButton , дважды щелкнув элемент управления в форме.

  2. Добавьте следующий код в обработчик событий Click .

      Если filesListBox.Тогда SelectedItem - это ничто
        MessageBox.Show ("Пожалуйста, выберите файл.")
        Выйти из подводной лодки
    Конец, если
    
    'Получить путь к файлу из списка.
    Dim filePath = filesListBox.SelectedItem.ToString
    
    'Убедитесь, что файл не был удален с момента
    'Была нажата кнопка "Обзор".
    Если My.Computer.FileSystem.FileExists (filePath) = False, то
        MessageBox.Show («Файл не найден:» & filePath)
        Выйти из подводной лодки
    Конец, если
    
    'Получить информацию о файле в виде строки.
    Dim fileInfoText As String = GetTextForOutput (filePath)
    
    'Показать информацию о файле.MessageBox.Show (fileInfoText)
      

    Код проверяет, что элемент выбран в ListBox . Затем он получает запись пути к файлу из ListBox . Метод FileExists используется для проверки существования файла.

    Путь к файлу отправляется в качестве аргумента методу GetTextForOutput , который добавляется на следующем шаге. Этот метод возвращает строку, содержащую информацию о файле. Информация о файле появится в MessageBox .

  3. Добавьте следующий метод GetTextForOutput .

      Частная функция GetTextForOutput (ByVal filePath как строка) как строка
        'Убедитесь, что файл существует.
        Если My.Computer.FileSystem.FileExists (filePath) = False, то
            Создать новое исключение («Файл не найден:» & filePath)
        Конец, если
    
        'Создайте новый StringBuilder, который используется
        'для эффективного построения строк.
        Dim sb как новый System.Text.StringBuilder ()
    
        'Получить информацию о файле.Затемнить thisFile как System.IO.FileInfo = My.Computer.FileSystem.GetFileInfo (filePath)
    
        'Добавить атрибуты файла.
        sb.Append ("Файл:" & thisFile.FullName)
        sb.Append (vbCrLf)
        sb.Append ("Изменено:" & thisFile.LastWriteTime.ToString)
        sb.Append (vbCrLf)
        sb.Append ("Размер:" & thisFile.Length.ToString & "байты")
        sb.Append (vbCrLf)
    
        'Откройте текстовый файл.
        Dim sr как System.IO.StreamReader =
            My.Computer.FileSystem.OpenTextFileReader (путь к файлу)
    
        'Добавьте первую строку из файла.Если sr.Peek ()> = 0 Тогда
            sb.Append ("Первая строка:" & sr.ReadLine ())
        Конец, если
        sr.Close ()
    
        Возврат sb.ToString
    Конечная функция
      

    Код использует метод GetFileInfo для получения параметров файла. Параметры файла добавляются в StringBuilder.

    Метод OpenTextFileReader считывает содержимое файла в StreamReader. Первая строка содержимого получается из StreamReader и добавляется в StringBuilder .

  4. Запустить приложение.Щелкните Обзор и перейдите к папке, содержащей файлы .txt. Нажмите ОК .

    Выберите файл в списке ListBox , а затем щелкните Проверить . MessageBox показывает информацию о файле.

  5. Остановить выполнение приложения.

Для добавления записи в журнал

  1. Добавьте следующий код в конец обработчика события exploreButton_Click .

      Если saveCheckBox.Проверено = True Тогда
        'Поместите файл журнала в ту же папку, что и исследуемый файл.
        Уменьшить размер logFolder как String = My.Computer.FileSystem.GetFileInfo (filePath) .DirectoryName
        Dim logFilePath = My.Computer.FileSystem.CombinePath (logFolder, "log.txt")
    
        Dim logText As String = "Logged:" & Date.Now.ToString &
            vbCrLf и fileInfoText и vbCrLf и vbCrLf
    
        'Добавить текст в файл журнала.
        My.Computer.FileSystem.WriteAllText (logFilePath, logText, append: = True)
    Конец, если
      

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

    Метод WriteAllText с аргументом append , установленным на True , используется для создания записи журнала.

  2. Запустить приложение. Найдите текстовый файл, выберите его в списке ListBox , установите флажок Сохранить результаты , а затем щелкните Проверить . Убедитесь, что запись журнала записана в файл log.txt .

  3. Остановить выполнение приложения.

Для использования текущего каталога

  1. Создайте обработчик событий для Form1_Load , дважды щелкнув форму.

  2. Добавьте следующий код в обработчик событий.

      'Установить текущий каталог в качестве каталога по умолчанию обозревателя папок.
    FolderBrowserDialog1.SelectedPath = My.Computer.FileSystem.CurrentDirectory
      

    Этот код устанавливает текущий каталог в качестве каталога по умолчанию обозревателя папок.

  3. Запустить приложение. Когда вы нажимаете Обзор в первый раз, диалоговое окно Обзор папки открывается для текущего каталога.

  4. Остановить выполнение приложения.

Для выборочного включения элементов управления

  1. Добавьте следующий метод SetEnabled .

      Private Sub SetEnabled ()
        Затемнить anySelected как логическое =
            (filesListBox.SelectedItem не является ничем)
    
        exploreButton.Включено = anySelected
        saveCheckBox.Enabled = anySelected
    Конец подписки
      

    Метод SetEnabled включает или отключает элементы управления в зависимости от того, выбран ли элемент в ListBox .

  2. Создайте обработчик событий SelectedIndexChanged для файлов ListBox , дважды щелкнув элемент управления ListBox в форме.

  3. Добавьте вызов SetEnabled в новый обработчик событий filesListBox_SelectedIndexChanged .

  4. Добавьте вызов к SetEnabled в конце обработчика события browseButton_Click .

  5. Добавьте вызов к SetEnabled в конце обработчика события Form1_Load .

  6. Запустить приложение. Флажок Сохранить результаты и кнопка Проверить отключены, если элемент не выбран в ListBox .

Полный пример с использованием My.Компьютер.Файловая система

Ниже приведен полный пример.

 
'В этом примере используются элементы My.Computer.FileSystem
', которые доступны в Visual Basic.

Private Sub Form1_Load (ByVal sender As System.Object, ByVal e As System.EventArgs) обрабатывает MyBase.Load
    'Установить текущий каталог в качестве каталога по умолчанию обозревателя папок.
    FolderBrowserDialog1.SelectedPath = My.Computer.FileSystem.CurrentDirectory

    SetEnabled ()
Конец подписки

Private Sub browseButton_Click (ByVal sender As System.Object, ByVal e As System.EventArgs) Обрабатывает browseButton.Click
    Если FolderBrowserDialog1.ShowDialog () = DialogResult.OK Тогда
        'Список файлов в папке.
        ListFiles (FolderBrowserDialog1.SelectedPath)
    Конец, если
    SetEnabled ()
Конец подписки

Private Sub ListFiles (ByVal folderPath как строка)
    filesListBox.Items.Clear ()

    Dim fileNames = My.Computer.FileSystem.GetFiles (
        folderPath, FileIO.SearchOption.SearchTopLevelOnly, "* .txt")

    Для каждого имени файла в виде строки в именах файлов
        filesListBox.Items.Add (имя_файла)
    Следующий
Конец подписки

Частный Sub exploreButton_Click (ByVal sender As System.Object, ByVal e As System.EventArgs) Обрабатывает exploreButton.Click
    Если filesListBox.SelectedItem - ничего, то
        MessageBox.Show ("Пожалуйста, выберите файл.")
        Выйти из подводной лодки
    Конец, если

    'Получить путь к файлу из списка.
    Dim filePath = filesListBox.SelectedItem.ToString

    'Убедитесь, что файл не был удален с момента
    'Была нажата кнопка "Обзор".
    Если My.Computer.FileSystem.FileExists (filePath) = False Тогда
        MessageBox.Show («Файл не найден:» & filePath)
        Выйти из подводной лодки
    Конец, если

    'Получить информацию о файле в виде строки.
    Dim fileInfoText As String = GetTextForOutput (filePath)

    'Показать информацию о файле.
    MessageBox.Show (fileInfoText)

    Если saveCheckBox.Checked = True, то
        'Поместите файл журнала в ту же папку, что и исследуемый файл.
        Уменьшить размер logFolder как String = My.Computer.FileSystem.GetFileInfo (filePath) .DirectoryName
        Тусклый logFilePath = My.Computer.FileSystem.CombinePath (logFolder, "log.txt")

        Dim logText As String = "Logged:" & Date.Now.ToString &
            vbCrLf и fileInfoText и vbCrLf и vbCrLf

        'Добавить текст в файл журнала.
        My.Computer.FileSystem.WriteAllText (logFilePath, logText, append: = True)
    Конец, если
Конец подписки

Частная функция GetTextForOutput (ByVal filePath как строка) как строка
    'Убедитесь, что файл существует.
    Если My.Computer.FileSystem.FileExists (filePath) = False, то
        Создать новое исключение («Файл не найден:» & filePath)
    Конец, если

    'Создайте новый StringBuilder, который используется
    'для эффективного построения строк.Dim sb как новый System.Text.StringBuilder ()

    'Получить информацию о файле.
    Затемнить thisFile как System.IO.FileInfo = My.Computer.FileSystem.GetFileInfo (filePath)

    'Добавить атрибуты файла.
    sb.Append ("Файл:" & thisFile.FullName)
    sb.Append (vbCrLf)
    sb.Append ("Изменено:" & thisFile.LastWriteTime.ToString)
    sb.Append (vbCrLf)
    sb.Append ("Размер:" & thisFile.Length.ToString & "байты")
    sb.Append (vbCrLf)

    'Откройте текстовый файл.
    Dim sr как System.IO.StreamReader =
        Мой.Computer.FileSystem.OpenTextFileReader (путь к файлу)

    'Добавьте первую строку из файла.
    Если sr.Peek ()> = 0 Тогда
        sb.Append ("Первая строка:" & sr.ReadLine ())
    Конец, если
    sr.Close ()

    Возврат sb.ToString
Конечная функция

Private Sub filesListBox_SelectedIndexChanged (ByVal sender As System.Object, ByVal e As System.EventArgs) Обрабатывает filesListBox.SelectedIndexChanged
    SetEnabled ()
Конец подписки

Private Sub SetEnabled ()
    Затемнить anySelected как логическое =
        (filesListBox.SelectedItem не является ничем)

    exploreButton.Включено = anySelected
    saveCheckBox.Enabled = anySelected
Конец подписки
  

Полный пример с использованием System.IO

В следующем эквивалентном примере используются классы из пространства имен System.IO вместо объектов My.Computer.FileSystem .

 
'В этом примере используются классы из пространства имен System.IO.

Private Sub Form1_Load (ByVal sender As System.Object, ByVal e As System.EventArgs) обрабатывает MyBase.Load
    'Установить текущий каталог в качестве каталога по умолчанию обозревателя папок.FolderBrowserDialog1.SelectedPath =
        System.IO.Directory.GetCurrentDirectory ()

    SetEnabled ()
Конец подписки

Private Sub browseButton_Click (ByVal sender As System.Object, ByVal e As System.EventArgs) Обрабатывает browseButton.Click
    Если FolderBrowserDialog1.ShowDialog () = DialogResult.OK Тогда
        'Список файлов в папке.
        ListFiles (FolderBrowserDialog1.SelectedPath)
        SetEnabled ()
    Конец, если
Конец подписки

Private Sub ListFiles (ByVal folderPath как строка)
    filesListBox.Items.Прозрачный()

    Уменьшить размер имен файлов как String () =
        System.IO.Directory.GetFiles (путь к папке,
            "* .txt", System.IO.SearchOption.TopDirectoryOnly)

    Для каждого имени файла в виде строки в именах файлов
        filesListBox.Items.Add (имя_файла)
    Следующий
Конец подписки

Частный Sub exploreButton_Click (ByVal sender As System.Object, ByVal e As System.EventArgs) Обрабатывает exploreButton.Click
    Если filesListBox.SelectedItem - ничего, то
        MessageBox.Show ("Пожалуйста, выберите файл.")
        Выйти из подводной лодки
    Конец, если

    'Получить путь к файлу из списка.Dim filePath = filesListBox.SelectedItem.ToString

    'Убедитесь, что файл не был удален с момента
    'Была нажата кнопка "Обзор".
    Если System.IO.File.Exists (filePath) = False, то
        MessageBox.Show («Файл не найден:» & filePath)
        Выйти из подводной лодки
    Конец, если

    'Получить информацию о файле в виде строки.
    Dim fileInfoText As String = GetTextForOutput (filePath)

    'Показать информацию о файле.
    MessageBox.Show (fileInfoText)

    Если saveCheckBox.Checked = True, то
        'Поместите файл журнала в ту же папку, что и исследуемый файл.Dim logFolder As String =
            System.IO.Path.GetDirectoryName (путь к файлу)
        Dim logFilePath = System.IO.Path.Combine (logFolder, "log.txt")

        'Добавить текст в файл журнала.
        Dim logText As String = "Logged:" & Date.Now.ToString &
            vbCrLf и fileInfoText и vbCrLf и vbCrLf

        System.IO.File.AppendAllText (logFilePath, logText)
    Конец, если
Конец подписки

Частная функция GetTextForOutput (ByVal filePath как строка) как строка
    'Убедитесь, что файл существует.Если System.IO.File.Exists (filePath) = False, то
        Создать новое исключение («Файл не найден:» & filePath)
    Конец, если

    'Создайте новый StringBuilder, который используется
    'для эффективного построения строк.
    Dim sb как новый System.Text.StringBuilder ()

    'Получить информацию о файле.
    Замените этот файл как новый System.IO.FileInfo (filePath)

    'Добавить атрибуты файла.
    sb.Append ("Файл:" & thisFile.FullName)
    sb.Append (vbCrLf)
    sb.Append ("Изменено:" & thisFile.LastWriteTime.ToString)
    сб.Добавить (vbCrLf)
    sb.Append ("Размер:" & thisFile.Length.ToString & "байты")
    sb.Append (vbCrLf)

    'Откройте текстовый файл.
    Dim sr как System.IO.StreamReader =
        System.IO.File.OpenText (путь к файлу)

    'Добавьте первую строку из файла.
    Если sr.Peek ()> = 0 Тогда
        sb.Append ("Первая строка:" & sr.ReadLine ())
    Конец, если
    sr.Close ()

    Возврат sb.ToString
Конечная функция

Private Sub filesListBox_SelectedIndexChanged (ByVal sender As System.Object, ByVal e As System.EventArgs) Обрабатывает filesListBox.SelectedIndexChanged
    SetEnabled ()
Конец подписки

Private Sub SetEnabled ()
    Затемнить anySelected как логическое =
        (filesListBox.SelectedItem не является ничем)

    exploreButton.Enabled = anySelected
    saveCheckBox.Enabled = anySelected
Конец подписки
  

См. Также

Добавление файлов в проекты Visual Studio

Когда я думаю о вещах, которые меня больше всего раздражают в среде IDE Visual Studio, диалог Project New Item … и то, как он работает, должен занимать первое место в списке.

Добавление новых файлов в проект — обычная задача, и, честно говоря, я думаю, что большая часть критики в адрес Visual Studio со стороны разработчиков, не использующих Visual Studio, которые впервые используют Visual Studio, можно отнести к запутанному способу добавления файлов в проект.

Итак, вот несколько неприятностей и несколько советов, как сделать добавление новых элементов в проект более терпимым.

Новый предмет или новый файл?

Используете ли вы новый файл или новый элемент ? И почему эти варианты похоронены? В меню «Файл» отображается только Новый файл , которое является очевидным местом для поиска, но, скорее всего, неправильным выбором, когда вам действительно нужен диалог Новый элемент .

По умолчанию диалоговое окно Новый файл … , которое вы хотите использовать большую часть времени, не отображается на Ctrl-N, как вы ожидаете — нет, этот очевидный ярлык переходит в диалоговое окно Новый файл , которое создает новый файл, который не добавлен в проект. Полезно в некоторых случаях, но обычно не применимо, когда вы работаете над проектом.

Функция «Новый элемент», вероятно, является наиболее часто используемым действием контекстного меню, которое вы используете на уровне проекта, однако параметр «Новый элемент» скрыт во вторичном меню:

The Add… опция скрыта в середине контекстного меню, где ее трудно увидеть (потому что текст короткий), а затем опция New Item … находится на один уровень ниже. Если ты там мышки — боль.

Мне кажется, что вариант New Item … должен быть в самом верху первого контекстного меню — не вложенным — поэтому вам не нужно за ним охотиться. Добавить … все еще может быть там для всех других опций, но этот Новый предмет заслуживает более заметного расположения.

Вы также можете найти New Item … в меню Project с Project -> New Item , который немного легче обнаружить. Но тогда никто не смотрит туда, не так ли?

Переназначение Ctrl-N в диалог создания нового элемента

Тогда есть сочетания клавиш …

Как уже упоминалось, ярлык по умолчанию для New Item — , а не Ctrl-N. Я не уверен, из-за переназначения клавиатуры, которое таинственным образом происходит из-за различных установленных расширений, но для меня New Item… опция не имеет ключевой ассоциации.

Очевидная клавиша — Ctrl-N — привязана к диалогу New File .. , который, хотя и назван так же, делает нечто совершенно иное. В отличие от New Item , диалоговое окно New File открывает новый свободный файл и не добавляет его в проект. Новый элемент открывает новый файл и автоматически добавляет его в проект, а также создает зависимые файлы, добавляет ссылки и т. Д., Которые связаны с используемым базовым шаблоном файла.

Сейчас я бы предпочел, чтобы Ctrl-N всегда отображался на Новый элемент . Вы можете легко это исправить в параметрах Visual Studio:

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

Похоже, Visual Studio 2017 по умолчанию Ctrl-N для нового элемента … как и следовало ожидать.

Используйте Ctrl-E для перехода к поиску в диалоговом окне «Новый элемент»

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

Было бы намного лучше, если бы вы могли просто начать вводить имя типа или расширение (html, xaml, ts что угодно). Но как бы то ни было, вам нужно сначала перейти к окну поиска или даже к списку выбора элементов.

К счастью, вы можете легко использовать ярлык поиска Ctrl-E , чтобы перейти к окну поиска. Visual Studio недавно добавила текст-заполнитель в поле поиска, чтобы его было легче найти, но даже в этом случае его легко пропустить.

Для меня мой типичный поток новых предметов:

  • Ctrl-N , чтобы открыть диалог нового предмета
  • Ctrl-E для поиска
  • Введите текст для поиска как Окно WPF
  • Перейдите к списку и перейдите к элементу (при необходимости)
  • Перейдите к имени файла и измените
  • Нажмите Enter , чтобы добавить файл

Это много нажатий клавиш просто даже с ярлыками для добавления нового файла, и это действительно то, что считается оптимизированным рабочим процессом.Это разумно, только если мне нужно что-то более сложное, например, элемент многофайлового проекта, например, форма WPF.

Но для нового класса? Неужели нам действительно нужно столько накладных расходов, чтобы добавить в проект один файл?

Рабочий процесс может быть проще!

В идеале я хотел бы видеть поле поиска «Новый элемент» прямо над списком, по умолчанию оно должно быть выделено. Остальная часть потока работает так, как и следовало ожидать.

FWIW, диалоговое окно New Item намного быстрее, чем то, что было до Visual Studio 2015, и еще лучше в VS 2017 RC, теперь это вопрос оптимизации рабочего процесса внутри него, чтобы сделать его более удобным для пользователя и более удобным для клавиатуры. особенно.

Не забывайте «Быстрые» ярлыки

Если вы долгое время использовали Visual Studio, легко застрять в колее и даже не обращать внимания на меню, но на самом деле в контекстном меню Добавить есть ряд дополнительных контекстно-зависимых ярлыков. :

Меню меняется в зависимости от того, в каком типе проекта вы находитесь. Вышесказанное относится к более старому проекту WebForms. Следующее относится к проекту WPF и, возможно, не так сфокусировано:

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

Эти сочетания клавиш также доступны в панели меню верхнего уровня Project , поэтому Alt-P , по крайней мере, быстро доставит вас к этим сочетаниям клавиш, но все еще есть некоторая клавиатура / мышь, которую нужно сделать, чтобы выбрать любой из них (без сочетаний клавиш), но это все еще быстрее, чем использование мыши и контекстного меню.

Отсутствующие типы файлов

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

Например, я работал над проектом WPF с Markdown Monster.MM включает ряд проектов библиотеки классов надстроек, которые ссылаются и потенциально создают свои собственные окна и элементы управления WPF.

Тем не менее, когда я нахожусь в диалоговом окне New Item … , нет параметров для добавления нового окна Xaml. Есть миллион других неподходящих вариантов, но XAML Window среди них нет:

Так как это не отдельный файл, а файл с кодом, добавление файла вручную довольно затруднительно. Единственный способ эффективно сделать это — скопировать существующее окно из другого проекта в том же решении и скопировать его в свой проект.Затем очищаю весь код и переименовываю. Этот опыт действительно отстой.

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

Хотя я понимаю, что диалоговое окно «Новый элемент» должно быть контекстно-зависимым от типа проекта, который вы используете, а форма WPF обычно не имеет смысла в веб-проекте, все же должна быть опция , чтобы показать мне все, поскольку я могу делать что-то нестандартное.В Markdown Monster у меня есть дополнительные проекты, которые могут добавлять пользовательские окна, и добавление новых окон в эти проекты — настоящая головная боль.

В частности, проекты библиотеки классов

могут содержать что угодно, и вы должны иметь возможность получить на все параметры .

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

Новое расширение файла Мадса Кристенсена

Как всегда, если в Visual Studio есть какой-то недостаток, у Мэдса Кристенсена, вероятно, есть расширение для него.И, что верно, есть расширение «Добавить новый файл», которое добавляет возможность «просто создать новый файл»:

Расширение просто позволяет вам ввести имя файла и на основе имени файла определить, какой шаблон использовать и какие зависимости добавить (которые поддерживаются расширением, а не шаблоном нового элемента).

Это отлично подходит для простых файлов, таких как классы C #, файлы JavaScript и TypeScript, файлы HTML и ряд других отдельных файлов. Это не так хорошо работает со сложными файлами, не относящимися к Интернету.Таким образом, я могу создать файл Xaml, и он создаст один пустой файл, что не совсем так полезно, поскольку не подключает окно и код позади (что болезненно делать вручную).

Надстройка также довольно минималистична — она ​​в основном создает пустые файлы. Таким образом, файл C # содержит только с использованием, например, заголовка пространства имен System . Вы можете создать класс. Тем не менее, во многих случаях на самом деле быстрее ввести отсутствующий код, чем просматривать пользовательский интерфейс нового шаблона элемента и выдавать шаблон, который вам необходимо затем реорганизовать, чтобы присвоить ему правильное имя и область действия.

Расширение сопоставлено с Shift-F2 по умолчанию, так что вы можете добраться туда очень быстро, введите свое имя файла и вперед.

Это замечательный инструмент, который я использую довольно часто, особенно для классов C # в проекте — это, безусловно, самый быстрый способ добавить новый класс в проект.

Это работает, особенно для отдельных файлов, таких как классы, HTML, JS, TS и т. Д. Но для других вещей шаблоны, возможно, немного ограничены. При вводе файла XAML, например, не создается файл с выделенным кодом (что имеет смысл, поскольку вы не знаете, какой это тип xaml).Тем не менее, даже с этим ограничением это отличное простое в использовании дополнение к Visual Studio. Получите его сейчас, если он еще не установлен, и запомните Shift-F2 .

Visual Studio 2017 — некоторые улучшения

Visual Studio 2017 правильно устанавливает сочетание клавиш Ctrl-N для диалогового окна «Новый элемент», как и должно быть.

Что касается шаблонов проектов, похоже, нет никаких изменений, но есть новый режим проекта папки без решения, который предлагает гораздо более легкое добавление файлов.

с последующим вводом имени файла в шаблон проекта:

, хотя это создает полностью пустой файл без каких-либо шаблонов, что не … действительно так полезно.

Действительно печально то, что эта функция работает только в проектах папок, которые, по сути, представляют собой просто проекты на основе файлов, которые показывают вам, что находится на диске, т.е. подход VS Code или Sublime style. В обычных проектах это не работает. для этого мы должны придерживаться расширения Мэдса.

Контекстное меню Resharper

Resharper также имеет контекстное меню, которое немного упрощает эту задачу. Нажмите Alt-Insert, и вы получите контекстно-зависимые параметры проекта для добавления новых файлов.

Это работает очень быстро и хорошо для базовых элементов этого меню, таких как Class, Struct, Interface и Enum. Но даже несмотря на то, что есть опция More … , которая вызывает диалог с большим количеством опций, варианты там довольно ограничены. Например, в проекте WPF я вижу только словарь ресурсов, а не пользовательский элемент управления, окно, ресурсы и т. Д.чего и следовало ожидать.

Сводка

Visual Studio и инструменты поддержки предоставляют огромное количество способов создания новых элементов в проектах, но большинство из них довольно интенсивны. Visual Studio действительно нуждается в очень быстром и ориентированном на клавиатуру (или один щелчок мышью контекстном меню) подходе для добавления новых файлов в проект. Текущее диалоговое окно New Item, которое использует большинство людей, — ужасная трата времени разработчика.

Даже несмотря на все эти разные способы добавления файлов в проект, кажется, что этот процесс невероятно трудоемок.Проект папок VS 2017 кажется хорошей отправной точкой в ​​качестве альтернативного варианта, но для большей жизнеспособности требуется больше шаблонов, ориентированных на типы файлов. Расширение Mads предоставляет кое-что из этого, но это что-то настолько фундаментальное, что оно должно быть встроено. В конце концов, практически любой редактор поддерживает быстрое редактирование файлов.

Почему я об этом говорю? Я убежден, что это одна из основных причин, по которой люди воспринимают Visual Studio как медлительного зверя. Новый файловый диалог и совместная работа являются воплощением того, что предлагает предписанный подход, и, заставляя людей идти по сложному пути к простым вещам, вы создаете ощущение сложности и властности.Предписанный подход очень полезен, но вам также должны быть доступны более быстрые и простые варианты, желательно по умолчанию.

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

Другие сообщения, которые могут вам понравиться

404 | Микро Фокус

  • Профессиональные услуги

    Сформируйте свою стратегию и преобразуйте гибридную ИТ-среду.


  • Профессиональные услуги по продуктам
  • Аналитика и большие данные

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

  • Компьютерная безопасность

    Помогите вам быстрее реагировать и получить конкурентное преимущество благодаря гибкости предприятия.

  • DevOps

    Повысьте эффективность гибридного облака с помощью услуг по консультированию, трансформации и внедрению.

  • Консультации по цепочке создания стоимости IT4IT

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

  • Управление доставкой приложений

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

  • Жизненный цикл мобильного приложения

    Полнофункциональное моделирование вариантов использования с предварительно созданными интеграциями в портфеле программного обеспечения Micro Focus, демонстрирующее реальные варианты использования

  • Управление гибридным облаком и брокерские услуги

    Услуги экспертной аналитики безопасности, которые помогут вам быстро спроектировать, развернуть и проверить реализацию технологии безопасности Micro Focus.

  • Автоматизация ЦОД

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

  • Управление операциями

    Анализируйте большие данные с помощью аналитики в реальном времени и ищите неструктурированные данные.

  • Управление услугами

    Анализируйте большие данные с помощью аналитики в реальном времени и ищите неструктурированные данные.

  • Vertica

    Анализируйте большие данные с помощью аналитики в реальном времени и ищите неструктурированные данные.

  • Глобальная аутентификация продукта

    Мобильные услуги, которые обеспечивают производительность и ускоряют вывод продукта на рынок без ущерба для качества.

  • Управляемые службы

    Анализируйте большие данные с помощью аналитики в реальном времени и ищите неструктурированные данные.

  • Модельные офисы

    Комплексные услуги по работе с большими данными для продвижения вашего предприятия.

  • 10 советов по работе с файлами и макетами Visual Studio

    В настоящее время большинство разработчиков работают удаленно. Следовательно, конфигурация монитора (ов) могла изменяться и часто меняться. В этом контексте важно оптимизировать макет Visual Studio и доступ к документам.Вот несколько советов.

    Короткая анимация GIF — отличный способ быстро изучить советы по продуктивности Visual Studio. Смотрите другие похожие посты, также основанные на коротких гифках здесь:

    1) Сохраните и примените макет Windows

    Меню Окно предлагает 4 подменю для Сохранить , Применить , Управлять и Сбросить макет окон Visual Studio. Вы можете использовать эту функцию как для переключения между конфигурациями нескольких мониторов, так и для переключения между различными действиями (написание кода или написание кода).тестирование или проверка кода…). Горячая клавиша Ctrl + Alt + Number N мгновенно переключает на раскладку Nth .

    Visual Studio Применить макет окна

    2) Вертикальные вкладки документов

    Вкладки документов можно разместить слева или справа. Это особенно полезно, если вы работаете со сверхшироким монитором и у вас гораздо больше места по ширине, чем по высоте.

    Макет вкладок файлов Visual Studio

    3) Сортировка вкладок файлов

    Когда вкладки находятся слева или справа, файлы сортируются по проектам.По умолчанию вкладки каждого проекта отсортированы в алфавитном порядке. Их также можно отсортировать по Сортировка по недавно открывшимся первым или Сортировка по недавно открывшимся последним .

    Сортировка вкладок Visual Studio: в алфавитном порядке и недавно открытые: первый / последний

    4) Редактор кода горизонтальное разделение

    Вы можете разделить выпуск файла по горизонтали, выбрав «Окно »> «Разбить ». Это особенно полезно при визуализации или редактировании двух мест в большом файле.

    Visual Studio: горизонтальное разделение редактора кода

    5) Вертикальное разделение редактора кода

    Вертикальное разделение не так просто, как горизонтальное разделение, описанное в предыдущем совете.Вертикальное разделение требует двухэтапного процесса:

    1. Первое Окно> Новое окно меню
    2. Второй щелкните правой кнопкой мыши вкладку Новая вертикальная группа документов

    Хотелось бы, чтобы была кнопка для переключения назад и вперед с горизонтального разделения на вертикальное.

    Visual Studio: вертикальное разделение редактора кода

    6) Группа документов

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

    Visual Studio Document Group

    Группы документов особенно полезны при использовании сверхширокого монитора:

    Вертикальная группа документов Visual Studio на сверхшироком мониторе

    7) Группы документов и вкладки вертикальных документов

    Группа документов хорошо работает, когда вкладки отображаются слева или справа. Затем проекты и файлы группируются по разделам группы вкладок :

    Группа документов Visual Studio с левой и правой вкладками

    8) Открыть недавно закрытый файл

    Диалог Перейти ко всем может быть запущен с помощью Ctrl + t .Затем просто введите или , и список покажет или новых файлов, включая файлы, которые были недавно закрыты.

    Visual Studio: открыть недавно закрытый файл

    9) Закрепить и отсоединить окно

    Чтобы закрепить и открепить окно, просто удерживайте клавишу Ctrl и дважды щелкните строку заголовка окна. Это намного быстрее, чем перетаскивать окно мышью.

    Visual Studio: закрепление и открепление окна

    10) Сравните файлы с Visual Studio

    Visual Studio предлагает отличный инструмент для сравнения файлов.Однако этот инструмент труднодоступен, поэтому большинство пользователей его игнорируют. Вы можете выполнить различие через командную строку с помощью команды devenv.exe / diff

    devenv.exe / diff C: \ Old \ Program.cs C: \ New \ Program.cs

    devenv.exe / diff C: \ Old \ Program.cs C: \ New \ Program.cs

    Если экземпляр Visual Studio существует, он будет использоваться для размещения представления различий, иначе новый экземпляр Visual Studio начнет размещать представление различий.

    Visual Studio: Code Diff

    Представление diff также можно открыть из командного окна Visual Studio с помощью этой команды:

    Tools.DiffFiles C: \ Old \ Program.cs C: \ New \ Program.cs

    Tools.DiffFiles C: \ Old \ Program.cs C: \ New \ Program.cs

    Visual Studio: код окна команд Diff

    Функция сравнения Visual Studio используется NDepend при сравнении с базовой линией внутри Visual Studio.NDepend создает моментальный снимок вашей базы кода, архивируя все исходные файлы во время анализа. Затем инструмент предлагает меню Diff from Baseline при щелчке правой кнопкой мыши по элементу в обозревателе решений или элементу кода в редакторе кода .

    Source Diff с NDepend в Visual Studio

    Заключение

    Я надеюсь, что потратив несколько минут на чтение этого поста, вы повысите свою продуктивность как пользователь Visual Studio 🙂

    Мой отец был одним из первых программистов в 70-х годах, и мне посчастливилось переключиться с Lego на программирование собственных микро-игр, когда я был еще ребенком.С тех пор я никогда не прекращаю программировать.

    Я закончил факультет математики и программной инженерии. После десятилетия программирования и консультирования на C ++ я заинтересовался новой платформой .NET в 2002 году. У меня была возможность написать бестселлер (на французском языке) по .NET и C #, опубликованный O’Reilly (> 15000 копий), а также руководил некоторыми академическими и профессиональными курсами по платформе и C #.

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

    Сегодня, имея более 8000 компаний-клиентов, в том числе многие из компаний из списка Fortune 500, NDepend предлагает более глубокое понимание и понимание их кодовых баз широкому кругу профессиональных пользователей по всему миру.

    Я живу с женой и нашими близнецами Леной и Полем на прекрасном острове Маврикий в Индийском океане.

    Codebasics — vscode-docs

    По своей сути Visual Studio Code — это редактор кода.Как и многие другие редакторы кода, VS Code использует общий пользовательский интерфейс и расположение проводника слева, отображающего все файлы и папки, к которым у вас есть доступ, и редактора справа, отображающего содержимое файлов, которые вы открыли. .

    Кроме того, в пользовательском интерфейсе VS Code есть ряд уникальных функций. В этом разделе описаны эти функции.

    Файлы, папки и проекты

    VS Code основан на файлах и папках — вы можете сразу приступить к работе, открыв файл или папку в VS Code.

    Кроме того, VS Code может читать и использовать различные файлы проекта, определенные различными фреймворками и платформами. Например, если папка, которую вы открыли в VS Code, содержит один или несколько пакетов package.json , project.json , tsconfig.json или файлы решений и проектов ASP.NET Core Visual Studio, VS Code прочитает их. файлы и использовать их для предоставления дополнительных функций, например, расширенного IntelliSense в редакторе.

    Базовая компоновка

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

    • Редактор основная область для редактирования файлов. Одновременно можно открыть до трех редакторов
    • Боковая панель содержит различные виды, например проводник, чтобы помочь вам при работе над проектом
    • Строка состояния показывает информацию об открытом проекте и файлах, которые вы редактируете
    • Панель просмотра в дальнем левом углу, позволяет переключаться между представлениями и дает дополнительные контекстно-зависимые индикаторы, такие как количество исходящих изменений при включенном Git

    Каждый раз, когда вы запускаете VS Code, он открывается в том же состоянии, в котором вы его закрывали в последний раз.Папка, макет и открытые файлы сохраняются.

    Вместо того, чтобы размещать файлы на отдельных вкладках, VS Code позволяет одновременно использовать до трех видимых редакторов, что позволяет размещать до трех файлов рядом.

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

    Совет: Вы можете переместить боковую панель вправо ( View > Move Sidebar ) или переключить ее видимость ( kb (workbench.action.toggleSidebarVisibility) ).

    Редактирование бок о бок

    У вас может быть до трех открытых одновременно.

    Если у вас уже открыт один редактор, есть несколько способов открыть другой редактор сбоку от существующего:

    • kbstyle (Ctrl) (Mac: kbstyle ('Cmd') ) щелкните файл в проводнике
    • kb (workbench.action.splitEditor) для разделения активного редактора на два
    • Открыть сбоку из контекстного меню проводника в файле

    Каждый раз, когда вы открываете другой файл, активный редактор отображает содержимое этого файла.Поэтому, если у вас есть два редактора бок о бок, и вы хотите открыть файл «foo.cs» в правом редакторе, убедитесь, что этот редактор активен (щелкнув внутри него), прежде чем открывать файл «foo.cs».

    Когда у вас открыто более одного редактора, вы можете быстро переключаться между ними, удерживая клавишу kbstyle (Ctrl) (Mac: kbstyle ('Cmd') ) и нажимая kbstyle (1) , kbstyle (2 ) или kbstyle (3) .

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

    Explorer

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

    После открытия папки в VS Code содержимое папки отображается в проводнике. Отсюда вы можете многое сделать:

    • создавать, удалять и переименовывать файлы и папки
    • перемещение файлов и папок с помощью перетаскивания
    • используйте контекстное меню для просмотра всех опций

    Совет: Вы можете перетащить файлы в проводник извне VS Code, чтобы скопировать их

    VS Code очень хорошо работает с другими инструментами, которые вы можете использовать, особенно с инструментами командной строки.Если вы хотите запустить инструмент командной строки в контексте папки, открытой в данный момент в VS Code, щелкните папку правой кнопкой мыши и выберите Открыть в командной строке (или Открыть в терминале в OS X или Linux).

    Вы также можете перейти к местоположению файла или папки в собственном проводнике, щелкнув правой кнопкой мыши файл или папку и выбрав Показать в Проводнике (или Показать в Finder на Mac или Открыть содержащую папку в Linux).

    Совет: Введите kb (workbench.action.quickOpen) ( Quick Open ), чтобы быстро найти и открыть файл по его имени.

    По умолчанию VS Code исключает некоторые папки из проводника (например, .git ). Используйте параметр files.exclude , чтобы настроить правила для скрытия файлов и папок от проводника.

    Совет: Это действительно полезно для скрытия файлов производных ресурсов, таких как \ *. Meta в Unity или \ *.js в проекте TypeScript. Чтобы Unity исключила файлы \ *. Cs.meta , нужно выбрать шаблон: "** / *. Cs.meta": true . Для TypeScript вы можете исключить сгенерированный JavaScript для файлов TypeScript с помощью: "** / *. Js": {"when": "$ (basename) .ts"} .

    Рабочие файлы

    В верхней части проводника находится раздел РАБОЧИЕ ФАЙЛЫ . Это список активных файлов. Это файлы, которые вы ранее открывали в VS Code, над которыми вы работаете.Например, файл будет указан в разделе рабочих файлов, если вы:

    • внести изменения в файл
    • дважды щелкните файл в проводнике
    • открыть файл, не входящий в текущую папку

    Думайте о РАБОЧИХ ФАЙЛАХ как о вкладках, с которыми вы, возможно, знакомы по другим редакторам кода или IDE. Просто щелкните файл в разделе рабочих файлов, и он станет активным в VS Code.

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

    Совет: Вы можете ввести kb (workbench.files.action.workingFilesPicker) , чтобы перемещаться по списку рабочих файлов из средства выбора файлов, не открывая проводника.

    Настройка редактора

    VS Code дает вам множество опций для настройки редактора. Вы можете установить параметры глобально с помощью пользовательских настроек или для каждого проекта / папки с помощью настроек рабочего пространства. Значения настроек хранятся в файле settings.json .

    • Выберите файлы > Настройки > Пользовательские настройки (или нажмите kb (workbench.action.showCommands) , введите user и нажмите Введите ), чтобы отредактировать файл user settings.json.

    • Выберите файлы > Настройки > Настройки рабочего пространства (или нажмите kb (workbench.action.showCommands) , введите worksp и нажмите Enter ), чтобы отредактировать файл settings.json рабочего пространства.

    Вы увидите настройки VS Code по умолчанию в левом окне и ваши редактируемые настройки .json справа. Вы можете легко просмотреть и скопировать настройки из настроек по умолчанию.

    После редактирования настроек введите kb (workbench.action.files.save) , чтобы сохранить изменения. Изменения вступят в силу немедленно.

    Сохранить / Автосохранение

    По умолчанию VS Code требует явного действия для сохранения изменений на диск, КБ (workbench.action.files.save) .

    Однако легко включить Автосохранение , которое сохранит ваши изменения после заданной задержки или когда фокус покидает редактор.Если этот параметр включен, нет необходимости явно сохранять файл.

    Чтобы настроить Auto Save , откройте User Settings или Workspace Settings и найдите связанные настройки:

    • files.autoSave : может иметь значения off, для отключения автосохранения, afterDelay для сохранения файлов после заданной задержки и onFocusChange для сохранения файлов, когда фокус перемещается из редактора грязного файла.
    • files.autoSaveDelay : Настраивает задержку в миллисекундах, когда files.autoSave настроен на afterDelay .

    Поиск в файлах

    VS Code позволяет быстро искать по всем файлам в открытой в данный момент папке. Просто введите kb (workbench.view.search) и введите свой поиск. Результаты поиска группируются в файлы, содержащие поисковый запрос, с указанием совпадений в каждом файле и его местоположения.Разверните файл, чтобы просмотреть все обращения в этом файле. Затем щелкните один из обращений, чтобы просмотреть его в редакторе.

    Совет: Мы также поддерживаем поиск по регулярным выражениям в поле поиска.

    Вы можете настроить параметры расширенного поиска, набрав kb (workbench.action.search.toggleQueryDetails) . Появятся дополнительные поля для настройки поиска.

    В двух полях ввода под полем поиска вы можете включать и исключать файлы.Щелкните переключатель справа, чтобы включить синтаксис шаблона глобуса:

    • * для соответствия одному или нескольким символам в сегменте пути
    • ? для соответствия одному символу в сегменте пути
    • ** для соответствия любому количеству сегментов пути, включая ни одного
    • {} для группировки условий (например, {** / *. Html, ** / *. Txt} соответствует всем HTML и текстовым файлам)
    • [] для объявления диапазона совпадающих символов (например,g., пример . [0-9] соответствует примеру .0 , пример .1 ,…)

    VS Code по умолчанию исключает некоторые папки, чтобы уменьшить количество результатов поиска, которые вас не интересуют (например: node_modules ). Откройте настройки для изменения этих правил в разделе files.exclude и search.exclude section.

    Совет: В проводнике вы можете щелкнуть правой кнопкой мыши папку и выбрать Найти в папке для поиска только внутри папки.

    Палитра команд

    Код

    VS также доступен с клавиатуры. Самая важная комбинация клавиш, которую необходимо знать, — это kb (workbench.action.showCommands) , которая вызывает палитру команд . Отсюда у вас есть доступ ко всем функциям VS Code, включая сочетания клавиш для наиболее распространенных операций.

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

    • kb (workbench.action.quickOpen) позволит вам перейти к любому файлу или символу, просто набрав его имя
    • kb (workbench.action.openPreviousEditor) будет циклически перебирать последний набор открытых файлов
    • kb (workbench.action.showCommands) перенесет вас прямо в редактор команд
    • kb (workbench.action.gotoSymbol) позволит вам перейти к определенному символу в файле
    • кб (верстак.action.gotoLine) позволит вам перейти к определенной строке в файле

    Тип ? в поле ввода, чтобы получить список доступных команд, которые вы можете выполнить отсюда:

    Быстрая навигация по файлам

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

    Удерживайте kbstyle (Ctrl) и нажмите kbstyle (Tab) , чтобы просмотреть список всех файлов, открытых с момента запуска VS Code. Чтобы открыть один из этих файлов, снова используйте kbstyle (Tab) , чтобы выбрать файл, к которому вы хотите перейти, затем отпустите kbstyle (Ctrl) , чтобы открыть его.

    В качестве альтернативы вы можете использовать Кб (workbench.action.navigateBack) и Кб (workbench.action.navigateForward) для навигации между файлами и мест редактирования.Если вы прыгаете между разными строками одного и того же файла, эти ярлыки позволяют легко перемещаться между этими местами.

    Совет: Вы можете открыть любой файл по его имени, набрав kb (workbench.action.quickOpen) ( Quick Open ).

    Поддержка кодировки файлов

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

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

    Щелкните кодировку в строке состояния, чтобы повторно открыть или сохранить активный файл с другой кодировкой.

    Затем выберите кодировку.

    Запуск из командной строки

    Вы можете запустить VS Code из командной строки, чтобы быстро открыть файл, папку или проект. Обычно вы открываете VS Code в контексте папки. Мы считаем, что лучший способ сделать это — просто набрать:

      код. 

    Совет: В нашем разделе «Настройка» есть инструкции для пользователей Mac, которые позволяют запускать VS Code из терминала. Мы автоматически добавляем исполняемый файл VS Code в переменную среды PATH в Windows и Linux.

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

      код index.html style.css readme.md
      

    Совет: Вы можете иметь сколько угодно имен файлов, разделенных пробелами.

    Дополнительные аргументы командной строки

    Вот необязательные аргументы командной строки, которые вы можете использовать при запуске VS Code из командной строки через код :

    Аргумент Описание
    -h или --help Использование печати
    -v или - версия Версия кода VS (например, 0.10.10)
    -n или - новое окно Открывает новый сеанс VS Code вместо восстановления предыдущего сеанса.
    -r или - окно повторного использования Принудительно открывает файл или папку в последнем активном окне.
    -g или -goto При использовании с файл: строка: столбец? , открывает файл в определенной строке и необязательной позиции столбца. Этот аргумент предоставляется, поскольку некоторые операционные системы допускают : в имени файла.
    файл Имя файла для открытия.Если файл не существует, он будет создан и помечен как отредактированный. Вы можете указать несколько файлов, разделив каждое имя файла пробелом.
    файл: строка: столбец? Имя файла, который нужно открыть в указанной строке и необязательной позиции столбца. Вы можете указать несколько файлов таким образом, но вы должны использовать аргумент -g (один раз) перед использованием файл: строка: столбец? Спецификатор .
    папка Имя открываемой папки.Вы можете указать несколько папок.
    -d или --diff Откройте редактор различий файлов. Требуется два пути к файлам в качестве аргументов.
    - местный Установите язык отображения (локаль) для сеанса VS Code. Поддерживаемые языки: en-US , zh-TW , zh-CN , fr , de , it , ja , ko , ru , es
    - отключаемые расширения Отключить все установленные расширения.Расширения по-прежнему будут отображаться в раскрывающемся списке «Расширения : Показать установленные расширения» , но они никогда не будут активированы.
    -w или - ждать Дождитесь закрытия окна перед возвратом

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

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

    Открытие проекта

    VS Code не делает различий между открытием папки и открытием проекта. Если VS Code обнаруживает проект в открытой папке (например, проект C #), контекст этого проекта будет отображаться в строке состояния. Если найдено более одного проекта, вы также можете переключать проекты оттуда.

    Чтобы открыть проект, содержащийся в папке C: \ src \ WebApp , запустите VS Code следующим образом:

      код C: \ src \ webapp
      

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

    Управление окнами

    VS Code имеет несколько параметров для управления тем, как окна должны открываться или восстанавливаться между сеансами.

    Параметр window.openFilesInNewWindow определяет, должны ли файлы открываться в новом окне вместо повторного использования существующего экземпляра VS Code. По умолчанию VS Code открывает новое окно, когда вы дважды щелкаете файл вне VS Code или открываете файл из командной строки. Установите значение false , чтобы повторно использовать последний активный экземпляр VS Code и открывать там файлы.

    Параметр window.reopenFolders сообщает VS Code, как восстановить открытые окна предыдущего сеанса. По умолчанию VS Code будет
    повторно откройте последнюю открытую папку, над которой вы работали (установка: и ). Измените этот параметр на нет , чтобы никогда не открывать повторно никакие папки и всегда начинать с пустого экземпляра VS Code. Измените его на все , чтобы восстановить все папки, с которыми вы работали во время предыдущего сеанса.

    Следующие шаги

    Вы рассмотрели базовый пользовательский интерфейс — VS Code — это гораздо больше.Читайте дальше, чтобы узнать о:

    • Параметры пользователя / рабочего пространства — узнайте, как настроить VS Code в соответствии с вашими предпочтениями с помощью параметров пользователя и рабочего пространства.
    • Расширенное редактирование — Lint, IntelliSense, Lightbulbs, Peek and Goto Definition и многое другое
    • Отладка

    • — вот где действительно сияет VS Code
    • Настройка — темы, настройки и привязки клавиатуры

    Общие вопросы

    Q: Возможен ли глобальный поиск и замена?

    A: Эта функция еще не реализована, но вы можете ожидать, что она появится в будущем!

    В: Как включить перенос слов?

    A: Вы можете управлять переносом слов с помощью редактора .wrappingColumn настройка. По умолчанию для редактора .wrapperingColumn установлено значение 300 символов. Вы можете настроить ширину столбца или установить нулевое значение для переноса ширины окна просмотра редактора:

      "editor.wrappingColumn": 0
      

    Вы можете переключить перенос слов для сеанса VS Code с кб (editor.action.toggleWordWrap) . При перезапуске VS Code будет сохранено постоянное значение editor.wrappingColumn .

    Вы также можете добавить в редактор линейки с вертикальными столбцами с помощью редактора .rulers , который принимает массив позиций символов столбцов, в которых вы хотели бы иметь вертикальные линейки.

    В: Как мне показать больше файлов в разделе РАБОЧИЕ ФАЙЛЫ?

    A: Вы можете настроить внешний вид РАБОЧИХ ФАЙЛОВ через свои настройки. Например, вы можете установить максимальное количество видимых файлов до появления полосы прокрутки с помощью параметра explorer.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *