<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.vbex.ru/index.php?action=history&amp;feed=atom&amp;title=VB.Net%2FFile_Directory%2FDirectory</id>
		<title>VB.Net/File Directory/Directory - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.vbex.ru/index.php?action=history&amp;feed=atom&amp;title=VB.Net%2FFile_Directory%2FDirectory"/>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VB.Net/File_Directory/Directory&amp;action=history"/>
		<updated>2026-04-05T12:20:21Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.vbex.ru/index.php?title=VB.Net/File_Directory/Directory&amp;diff=876&amp;oldid=prev</id>
		<title> в 16:40, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VB.Net/File_Directory/Directory&amp;diff=876&amp;oldid=prev"/>
				<updated>2010-05-26T16:40:06Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 16:40, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://www.vbex.ru/index.php?title=VB.Net/File_Directory/Directory&amp;diff=877&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VB.Net/File_Directory/Directory&amp;diff=877&amp;oldid=prev"/>
				<updated>2010-05-26T12:45:26Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Directory Information: name, last update and create time==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
Imports System.IO&lt;br /&gt;
Module Module1&lt;br /&gt;
    Sub Main()&lt;br /&gt;
            Dim Dir As New DirectoryInfo(&amp;quot;C:\WINNT\Temp&amp;quot;)&lt;br /&gt;
            Console.WriteLine(&amp;quot;Full name: {0}&amp;quot;, Dir.FullName)&lt;br /&gt;
            Console.WriteLine(&amp;quot;Creation time: {0}&amp;quot;, Dir.CreationTime)&lt;br /&gt;
            Console.WriteLine(&amp;quot;Last access time: {0}&amp;quot;, Dir.LastAccessTime)&lt;br /&gt;
            Console.WriteLine(&amp;quot;Last write time: {0}&amp;quot;, Dir.LastWriteTime)&lt;br /&gt;
    End Sub&lt;br /&gt;
End Module&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Directory Separator==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
Imports System.IO&lt;br /&gt;
Module Module1&lt;br /&gt;
    Sub Main()&lt;br /&gt;
        Console.WriteLine(&amp;quot;Directory Separator {0}&amp;quot;, Path.DirectorySeparatorChar)&lt;br /&gt;
    End Sub&lt;br /&gt;
End Module&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Display all file under a Directory==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
Imports System&lt;br /&gt;
Imports System.IO&lt;br /&gt;
Public Class MainClass&lt;br /&gt;
   Shared Sub Main()&lt;br /&gt;
         Dim fileName As String&lt;br /&gt;
         fileName = &amp;quot;C:\&amp;quot;&lt;br /&gt;
         &lt;br /&gt;
            Dim directoryList As String() &amp;quot; array for directories&lt;br /&gt;
            Dim i As Integer&lt;br /&gt;
            directoryList = Directory.GetDirectories(fileName)&lt;br /&gt;
            Console.WriteLine(&amp;quot;Directory contents:&amp;quot; )&lt;br /&gt;
            &amp;quot; output directoryList contents&lt;br /&gt;
            For i = 0 To directoryList.Length - 1&lt;br /&gt;
               Console.WriteLine( directoryList(i) )&lt;br /&gt;
            Next&lt;br /&gt;
   End Sub &amp;quot; Main&lt;br /&gt;
End Class&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Display Directory Tree==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
Imports System.IO&lt;br /&gt;
Module Module1&lt;br /&gt;
    Sub DisplayTree(ByVal Dir As String)&lt;br /&gt;
        Dim Files As String() = Directory.GetFiles(Dir)&lt;br /&gt;
        Dim Dirs As String() = Directory.GetDirectories(Dir)&lt;br /&gt;
        Dim Filename As String&lt;br /&gt;
        For Each Filename In Files&lt;br /&gt;
            Console.WriteLine(Filename)&lt;br /&gt;
        Next&lt;br /&gt;
        Dim DirectoryName As String&lt;br /&gt;
        For Each DirectoryName In Dirs&lt;br /&gt;
            DisplayTree(DirectoryName)&lt;br /&gt;
        Next&lt;br /&gt;
    End Sub&lt;br /&gt;
    Sub Main()&lt;br /&gt;
        DisplayTree(&amp;quot;C:\&amp;quot;)&lt;br /&gt;
    End Sub&lt;br /&gt;
End Module&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Find a file: search directory recursively==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
Imports System&lt;br /&gt;
Imports System.Windows.Forms&lt;br /&gt;
Imports System.IO&lt;br /&gt;
Imports System.Text.RegularExpressions&lt;br /&gt;
Imports System.Collections.Specialized&lt;br /&gt;
Public Class MainClass&lt;br /&gt;
   Shared Sub Main()&lt;br /&gt;
        Dim myform As Form = New FrmFileSearch()&lt;br /&gt;
        Application.Run(myform)&lt;br /&gt;
   End Sub &amp;quot; Main&lt;br /&gt;
End Class&lt;br /&gt;
 &lt;br /&gt;
Public Class FrmFileSearch&lt;br /&gt;
   Inherits Form&lt;br /&gt;
   &amp;quot; label that displays current directory&lt;br /&gt;
   Friend WithEvents lblDirectory As Label&lt;br /&gt;
   &amp;quot; label that displays directions to user&lt;br /&gt;
   Friend WithEvents lblDirections As Label&lt;br /&gt;
   &amp;quot; button that activates search&lt;br /&gt;
   Friend WithEvents cmdSearch As Button&lt;br /&gt;
   &amp;quot; text boxes for inputting and outputting data&lt;br /&gt;
   Friend WithEvents txtInput As TextBox&lt;br /&gt;
   Friend WithEvents txtOutput As TextBox&lt;br /&gt;
#Region &amp;quot; Windows Form Designer generated code &amp;quot;&lt;br /&gt;
   Public Sub New()&lt;br /&gt;
      MyBase.New()&lt;br /&gt;
      &amp;quot;This call is required by the Windows Form Designer.&lt;br /&gt;
      InitializeComponent()&lt;br /&gt;
      &amp;quot;Add any initialization after the InitializeComponent() call&lt;br /&gt;
   End Sub&lt;br /&gt;
   &amp;quot;Form overrides dispose to clean up the component list.&lt;br /&gt;
   Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)&lt;br /&gt;
      If disposing Then&lt;br /&gt;
         If Not (components Is Nothing) Then&lt;br /&gt;
            components.Dispose()&lt;br /&gt;
         End If&lt;br /&gt;
      End If&lt;br /&gt;
      MyBase.Dispose(disposing)&lt;br /&gt;
   End Sub&lt;br /&gt;
   &amp;quot;Required by the Windows Form Designer&lt;br /&gt;
   Private components As System.ruponentModel.Container&lt;br /&gt;
   &amp;quot;NOTE: The following procedure is required by the Windows Form Designer&lt;br /&gt;
   &amp;quot;It can be modified using the Windows Form Designer.  &lt;br /&gt;
   &amp;quot;Do not modify it using the code editor.&lt;br /&gt;
   &amp;lt;System.Diagnostics.DebuggerStepThrough()&amp;gt; Private Sub InitializeComponent()&lt;br /&gt;
      Me.txtOutput = New System.Windows.Forms.TextBox()&lt;br /&gt;
      Me.lblDirections = New System.Windows.Forms.Label()&lt;br /&gt;
      Me.lblDirectory = New System.Windows.Forms.Label()&lt;br /&gt;
      Me.txtInput = New System.Windows.Forms.TextBox()&lt;br /&gt;
      Me.cmdSearch = New System.Windows.Forms.Button()&lt;br /&gt;
      Me.SuspendLayout()&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      &amp;quot;txtOutput&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      Me.txtOutput.AutoSize = False&lt;br /&gt;
      Me.txtOutput.BackColor = System.Drawing.SystemColors.Control&lt;br /&gt;
      Me.txtOutput.Location = New System.Drawing.Point(20, 276)&lt;br /&gt;
      Me.txtOutput.Multiline = True&lt;br /&gt;
      Me.txtOutput.Name = &amp;quot;txtOutput&amp;quot;&lt;br /&gt;
      Me.txtOutput.ReadOnly = True&lt;br /&gt;
      Me.txtOutput.ScrollBars = System.Windows.Forms.ScrollBars.Vertical&lt;br /&gt;
      Me.txtOutput.Size = New System.Drawing.Size(461, 208)&lt;br /&gt;
      Me.txtOutput.TabIndex = 4&lt;br /&gt;
      Me.txtOutput.Text = &amp;quot;&amp;quot;&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      &amp;quot;lblDirections&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      Me.lblDirections.Font = New System.Drawing.Font(&amp;quot;Microsoft Sans Serif&amp;quot;, 10.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))&lt;br /&gt;
      Me.lblDirections.Location = New System.Drawing.Point(20, 138)&lt;br /&gt;
      Me.lblDirections.Name = &amp;quot;lblDirections&amp;quot;&lt;br /&gt;
      Me.lblDirections.Size = New System.Drawing.Size(451, 20)&lt;br /&gt;
      Me.lblDirections.TabIndex = 1&lt;br /&gt;
      Me.lblDirections.Text = &amp;quot;Enter Path to Search:&amp;quot;&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      &amp;quot;lblDirectory&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      Me.lblDirectory.Font = New System.Drawing.Font(&amp;quot;Microsoft Sans Serif&amp;quot;, 10.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))&lt;br /&gt;
      Me.lblDirectory.Location = New System.Drawing.Point(20, 20)&lt;br /&gt;
      Me.lblDirectory.Name = &amp;quot;lblDirectory&amp;quot;&lt;br /&gt;
      Me.lblDirectory.Size = New System.Drawing.Size(451, 98)&lt;br /&gt;
      Me.lblDirectory.TabIndex = 0&lt;br /&gt;
      Me.lblDirectory.Text = &amp;quot;Current Directory:&amp;quot;&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      &amp;quot;txtInput&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      Me.txtInput.Location = New System.Drawing.Point(20, 168)&lt;br /&gt;
      Me.txtInput.Name = &amp;quot;txtInput&amp;quot;&lt;br /&gt;
      Me.txtInput.Size = New System.Drawing.Size(461, 22)&lt;br /&gt;
      Me.txtInput.TabIndex = 3&lt;br /&gt;
      Me.txtInput.Text = &amp;quot;&amp;quot;&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      &amp;quot;cmdSearch&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      Me.cmdSearch.Font = New System.Drawing.Font(&amp;quot;Microsoft Sans Serif&amp;quot;, 9.75!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))&lt;br /&gt;
      Me.cmdSearch.Location = New System.Drawing.Point(20, 217)&lt;br /&gt;
      Me.cmdSearch.Name = &amp;quot;cmdSearch&amp;quot;&lt;br /&gt;
      Me.cmdSearch.Size = New System.Drawing.Size(461, 40)&lt;br /&gt;
      Me.cmdSearch.TabIndex = 2&lt;br /&gt;
      Me.cmdSearch.Text = &amp;quot;Search Directory&amp;quot;&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      &amp;quot;FrmFileSearch&lt;br /&gt;
      &amp;quot;&lt;br /&gt;
      Me.AutoScaleBaseSize = New System.Drawing.Size(6, 15)&lt;br /&gt;
      Me.ClientSize = New System.Drawing.Size(501, 499)&lt;br /&gt;
      Me.Controls.AddRange(New System.Windows.Forms.Control() {Me.txtOutput, Me.txtInput, Me.cmdSearch, Me.lblDirections, Me.lblDirectory})&lt;br /&gt;
      Me.Name = &amp;quot;FrmFileSearch&amp;quot;&lt;br /&gt;
      Me.Text = &amp;quot;Using Regular Expressions&amp;quot;&lt;br /&gt;
      Me.ResumeLayout(False)&lt;br /&gt;
   End Sub&lt;br /&gt;
#End Region&lt;br /&gt;
   Dim currentDirectory As String = Directory.GetCurrentDirectory&lt;br /&gt;
   Dim directoryList As String()&lt;br /&gt;
   Dim fileArray As String() &lt;br /&gt;
 &lt;br /&gt;
   Dim found As NameValueCollection = New NameValueCollection()&lt;br /&gt;
  &lt;br /&gt;
   Private Sub txtInput_KeyDown(ByVal sender As System.Object, _&lt;br /&gt;
      ByVal e As System.Windows.Forms.KeyEventArgs) _&lt;br /&gt;
      Handles txtInput.KeyDown&lt;br /&gt;
    &lt;br /&gt;
      If (e.KeyCode = Keys.Enter) Then&lt;br /&gt;
         cmdSearch_Click(sender, e)&lt;br /&gt;
      End If&lt;br /&gt;
   End Sub &lt;br /&gt;
 &lt;br /&gt;
   Private Sub cmdSearch_Click(ByVal sender As System.Object, _&lt;br /&gt;
      ByVal e As System.EventArgs) Handles cmdSearch.Click&lt;br /&gt;
      Dim current As String&lt;br /&gt;
    &lt;br /&gt;
      If txtInput.Text &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then&lt;br /&gt;
         &amp;quot; verify that user input is a valid directory name&lt;br /&gt;
         If Directory.Exists(txtInput.Text) Then&lt;br /&gt;
            currentDirectory = txtInput.Text&lt;br /&gt;
            &amp;quot; reset input text box and update display&lt;br /&gt;
            lblDirectory.Text = &amp;quot;Current Directory:&amp;quot; &amp;amp; vbCrLf &amp;amp; _&lt;br /&gt;
              currentDirectory&lt;br /&gt;
            &amp;quot; show error if user does not specify valid directory&lt;br /&gt;
         Else&lt;br /&gt;
            MessageBox.Show(&amp;quot;Invalid Directory&amp;quot;, &amp;quot;Error&amp;quot;, _&lt;br /&gt;
               MessageBoxButtons.OK, MessageBoxIcon.Error)&lt;br /&gt;
            Return&lt;br /&gt;
         End If&lt;br /&gt;
      End If&lt;br /&gt;
      &amp;quot; clear text boxes&lt;br /&gt;
      txtInput.Text = &amp;quot;&amp;quot;&lt;br /&gt;
      txtOutput.Text = &amp;quot;&amp;quot;&lt;br /&gt;
      &amp;quot; search directory&lt;br /&gt;
      SearchDirectory(currentDirectory)&lt;br /&gt;
      &amp;quot; summarize and print results&lt;br /&gt;
      For Each current In found&lt;br /&gt;
         txtOutput.Text &amp;amp;= &amp;quot;* Found &amp;quot; &amp;amp; found(current) &amp;amp; &amp;quot; &amp;quot; _&lt;br /&gt;
            &amp;amp; current &amp;amp; &amp;quot; files.&amp;quot; &amp;amp; vbCrLf&lt;br /&gt;
      Next&lt;br /&gt;
      &amp;quot; clear output for new search&lt;br /&gt;
      found.Clear()&lt;br /&gt;
   End Sub &amp;quot; cmdSearch_Click&lt;br /&gt;
   &amp;quot; search directory using regular expression&lt;br /&gt;
   Private Sub SearchDirectory(ByVal currentDirectory As String)&lt;br /&gt;
      &amp;quot; for file name without directory path&lt;br /&gt;
      Try&lt;br /&gt;
         Dim fileName As String = &amp;quot;&amp;quot;&lt;br /&gt;
         Dim myFile As String&lt;br /&gt;
         Dim myDirectory As String&lt;br /&gt;
         &amp;quot; regular expression for extensions matching pattern&lt;br /&gt;
         Dim regularExpression As Regex = _&lt;br /&gt;
            New Regex(&amp;quot;([a-zA-Z0-9]+\.(?&amp;lt;extension&amp;gt;\w+))&amp;quot;)&lt;br /&gt;
         &amp;quot; stores regular-expression-match result &lt;br /&gt;
         Dim matchResult As Match&lt;br /&gt;
         Dim fileExtension As String &amp;quot; holds file extensions&lt;br /&gt;
         &amp;quot; number of files with given extension in directory&lt;br /&gt;
         Dim extensionCount As Integer&lt;br /&gt;
         &amp;quot; get directories&lt;br /&gt;
         directoryList = _&lt;br /&gt;
            Directory.GetDirectories(currentDirectory)&lt;br /&gt;
         &amp;quot; get list of files in current directory&lt;br /&gt;
         fileArray = Directory.GetFiles(currentDirectory)&lt;br /&gt;
         &amp;quot; iterate through list of files&lt;br /&gt;
         For Each myFile In fileArray&lt;br /&gt;
           &lt;br /&gt;
            fileName = myFile.Substring( _&lt;br /&gt;
               myFile.LastIndexOf(&amp;quot;\&amp;quot;) + 1)&lt;br /&gt;
           &lt;br /&gt;
            matchResult = regularExpression.Match(fileName)&lt;br /&gt;
           &lt;br /&gt;
            If (matchResult.Success) Then&lt;br /&gt;
               fileExtension = matchResult.Result(&amp;quot;${extension}&amp;quot;)&lt;br /&gt;
            Else&lt;br /&gt;
               fileExtension = &amp;quot;[no extension]&amp;quot;&lt;br /&gt;
            End If&lt;br /&gt;
           &lt;br /&gt;
            If (found(fileExtension) = Nothing) Then&lt;br /&gt;
               found.Add(fileExtension, &amp;quot;1&amp;quot;)&lt;br /&gt;
            Else&lt;br /&gt;
               extensionCount = _&lt;br /&gt;
                  Convert.ToInt32(found(fileExtension)) + 1&lt;br /&gt;
               found(fileExtension) = extensionCount.ToString()&lt;br /&gt;
            End If&lt;br /&gt;
&lt;br /&gt;
         Next&lt;br /&gt;
       &lt;br /&gt;
         For Each myDirectory In directoryList&lt;br /&gt;
            SearchDirectory(myDirectory)&lt;br /&gt;
         Next&lt;br /&gt;
       &lt;br /&gt;
      Catch unauthorizedAccess As UnauthorizedAccessException&lt;br /&gt;
         MessageBox.Show(&amp;quot;Some files may not be visible due to&amp;quot; _&lt;br /&gt;
            &amp;amp; &amp;quot; permission settings&amp;quot;, &amp;quot;Warning&amp;quot;, _&lt;br /&gt;
            MessageBoxButtons.OK, MessageBoxIcon.Information)&lt;br /&gt;
      End Try&lt;br /&gt;
   End Sub&lt;br /&gt;
End Class &lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Get all directories==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
Imports System&lt;br /&gt;
Imports System.IO&lt;br /&gt;
Public Class MainClass&lt;br /&gt;
  Shared Sub Main()&lt;br /&gt;
    Dim curDir, nextDir As String&lt;br /&gt;
    Try&lt;br /&gt;
      curDir = Directory.GetCurrentDirectory()&lt;br /&gt;
      Console.WriteLine(curDir)&lt;br /&gt;
      For Each nextDir In Directory.GetDirectories(curDir)&lt;br /&gt;
        Console.WriteLine(nextDir)&lt;br /&gt;
      Next&lt;br /&gt;
    Catch ioe As IOException&lt;br /&gt;
      Console.WriteLine(&amp;quot;i/o problems!&amp;quot; &amp;amp; ioe.Message)&lt;br /&gt;
    Catch e As Exception&lt;br /&gt;
      Console.Write(e.StackTrace)&lt;br /&gt;
    Finally&lt;br /&gt;
      Console.Write(&amp;quot;Done&amp;quot;)&lt;br /&gt;
    End Try&lt;br /&gt;
  End Sub&lt;br /&gt;
  &lt;br /&gt;
End Class&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Get Current Directory==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
Imports System&lt;br /&gt;
&lt;br /&gt;
Public Class MainClass&lt;br /&gt;
   Shared Sub Main()&lt;br /&gt;
        Console.WriteLine(&amp;quot;CurrentDirectory:   &amp;quot; &amp;amp; System.Environment.CurrentDirectory )&lt;br /&gt;
   End Sub &lt;br /&gt;
End Class&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Get file in the parent folder ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
Imports System&lt;br /&gt;
Imports System.Windows.Forms&lt;br /&gt;
Public Class MainClass&lt;br /&gt;
   Shared Sub Main()&lt;br /&gt;
        Dim file_name As String = Application.StartupPath&lt;br /&gt;
        file_name = file_name.Substring(0, file_name.LastIndexOf(&amp;quot;\&amp;quot;))&lt;br /&gt;
        file_name = file_name.Substring(0, file_name.LastIndexOf(&amp;quot;\&amp;quot;))&lt;br /&gt;
        file_name &amp;amp;= &amp;quot;\test.vb&amp;quot;&lt;br /&gt;
        Console.WriteLine( file_name)&lt;br /&gt;
   End Sub &lt;br /&gt;
End Class&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Get Root directory and current directory==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
Imports System.IO&lt;br /&gt;
Module Module1&lt;br /&gt;
    Sub Main()&lt;br /&gt;
        Dim Current As String&lt;br /&gt;
        Dim Root As String&lt;br /&gt;
        Try&lt;br /&gt;
            Current = Directory.GetCurrentDirectory()&lt;br /&gt;
            Root = Directory.GetDirectoryRoot(Current)&lt;br /&gt;
            Root = Directory.GetDirectoryRoot(&amp;quot;\&amp;quot;)&lt;br /&gt;
            Console.WriteLine(&amp;quot;Current directory {0}&amp;quot;, Current)&lt;br /&gt;
            Console.WriteLine(&amp;quot;Root directory {0}&amp;quot;, Root)&lt;br /&gt;
        Catch E As Exception&lt;br /&gt;
            Console.WriteLine(&amp;quot;Error determining root directory&amp;quot;)&lt;br /&gt;
            Console.WriteLine(E.Message)&lt;br /&gt;
        End Try&lt;br /&gt;
    End Sub&lt;br /&gt;
End Module&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==List files and directories in root==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
Imports System.IO&lt;br /&gt;
Module Module1&lt;br /&gt;
    Sub Main()&lt;br /&gt;
        Dim Files As String() = Directory.GetFiles(&amp;quot;C:\&amp;quot;)&lt;br /&gt;
        Dim Dirs As String() = Directory.GetDirectories(&amp;quot;C:\&amp;quot;)&lt;br /&gt;
        Console.WriteLine(&amp;quot;Root Files&amp;quot;)&lt;br /&gt;
        Dim Filename As String&lt;br /&gt;
        For Each Filename In Files&lt;br /&gt;
            Console.WriteLine(Filename)&lt;br /&gt;
        Next&lt;br /&gt;
        Console.WriteLine(&amp;quot;Root Directories&amp;quot;)&lt;br /&gt;
        Dim DirectoryName As String&lt;br /&gt;
        For Each DirectoryName In Dirs&lt;br /&gt;
            Console.WriteLine(DirectoryName)&lt;br /&gt;
        Next&lt;br /&gt;
    End Sub&lt;br /&gt;
End Module&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Recursive Directory Info==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
Imports System&lt;br /&gt;
Imports System.IO&lt;br /&gt;
Public Class MainClass&lt;br /&gt;
  Shared Sub Main()&lt;br /&gt;
    Dim nameOfDirectory As String = &amp;quot;C:\&amp;quot;&lt;br /&gt;
    Dim myDirectory As DirectoryInfo&lt;br /&gt;
    myDirectory = New DirectoryInfo(nameOfDirectory)&lt;br /&gt;
    WorkWithDirectory(myDirectory)&lt;br /&gt;
  End Sub&lt;br /&gt;
  Shared Public Sub WorkWithDirectory(ByVal aDir As DirectoryInfo)&lt;br /&gt;
    Dim nextDir As DirectoryInfo&lt;br /&gt;
    WorkWithFilesInDir(aDir)&lt;br /&gt;
    For Each nextDir In aDir.GetDirectories&lt;br /&gt;
      WorkWithDirectory(nextDir)&lt;br /&gt;
    Next&lt;br /&gt;
  End Sub&lt;br /&gt;
  Shared Public Sub WorkWithFilesInDir(ByVal aDir As DirectoryInfo)&lt;br /&gt;
    Dim aFile As FileInfo&lt;br /&gt;
    For Each aFile In aDir.GetFiles()&lt;br /&gt;
      Console.WriteLine(aFile.FullName)&lt;br /&gt;
    Next&lt;br /&gt;
  End Sub&lt;br /&gt;
  &lt;br /&gt;
End Class&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Update  Directory: create time, last access time and last write time==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;vbnet&amp;quot;&amp;gt;&lt;br /&gt;
Imports System.IO&lt;br /&gt;
Module Module1&lt;br /&gt;
    Sub Main()&lt;br /&gt;
        If (Directory.Exists(&amp;quot;C:\WINNT\Temp&amp;quot;)) Then&lt;br /&gt;
            Dim Dir As New DirectoryInfo(&amp;quot;C:\WINNT\Temp&amp;quot;)&lt;br /&gt;
            Dim DateTimeNow As DateTime = DateTime.Now()&lt;br /&gt;
            Try&lt;br /&gt;
                Dir.CreationTime = DateTimeNow&lt;br /&gt;
                Dir.LastAccessTime = DateTimeNow&lt;br /&gt;
                Dir.LastWriteTime = DateTimeNow&lt;br /&gt;
                Console.WriteLine(&amp;quot;Directory attributes updated&amp;quot;)&lt;br /&gt;
            Catch E As Exception&lt;br /&gt;
                Console.WriteLine(&amp;quot;Error updating attributes&amp;quot;)&lt;br /&gt;
                Console.WriteLine(&amp;quot;Error {0}: &amp;quot;, E.Message)&lt;br /&gt;
            End Try&lt;br /&gt;
        Else&lt;br /&gt;
            Console.WriteLine(&amp;quot;C:\WINNT\Temp does not exist&amp;quot;)&lt;br /&gt;
        End If&lt;br /&gt;
    End Sub&lt;br /&gt;
End Module&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>