在C#中,常用的目录操作类有Directory, DirectoryInfo,基本上两个类提供的方法大同小异,有不算太大的区别,但是Directory类是静态类,所有的函数都是静态函数,可以直接调用。
使用Directory可以创建指定的目录,删除目录,获取目录信息,例如创建时间等,获取目录中的子目录,获取目录中的文件集合等操作,还可以设置目录的访问时间等。
简单的一个目录操作的代码,判断目录是否存在,如果不存在则创建目录:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string path = @"C:\Users\watkins\Desktop\TcpListener\TcpListener\bin";
bool a = Directory.Exists(path);
if (!a)
{
Directory.CreateDirectory(path);
}
Console.WriteLine(a);
Console.Read();
}
}
}
Directory类的成员列表:
Directory Members |
Exposes static methods for creating, moving, and enumerating through directories and subdirectories. This class cannot be inherited.
The Directory type exposes the following members.
Methods
Name | Description | |
---|---|---|
CreateDirectory(String) | Creates all directories and subdirectories as specified by path. | |
CreateDirectory(String, DirectorySecurity) | Creates all the directories in the specified path, applying the specified Windows security. | |
Delete(String) | Deletes an empty directory from a specified path. | |
Delete(String, Boolean) | Deletes the specified directory and, if indicated, any subdirectories and files in the directory. | |
EnumerateDirectories(String) | Returns an enumerable collection of directory names in a specified path. | |
EnumerateDirectories(String, String) | Returns an enumerable collection of directory names that match a search pattern in a specified path. | |
EnumerateDirectories(String, String, SearchOption) | Returns an enumerable collection of directory names that match a search pattern in a specified path, and optionally searches subdirectories. | |
EnumerateFiles(String) | Returns an enumerable collection of file names in a specified path. | |
EnumerateFiles(String, String) | Returns an enumerable collection of file names that match a search pattern in a specified path. | |
EnumerateFiles(String, String, SearchOption) | Returns an enumerable collection of file names that match a search pattern in a specified path, and optionally searches subdirectories. | |
EnumerateFileSystemEntries(String) | Returns an enumerable collection of file-system entries in a specified path. | |
EnumerateFileSystemEntries(String, String) | Returns an enumerable collection of file-system entries that match a search pattern in a specified path. | |
EnumerateFileSystemEntries(String, String, SearchOption) | Returns an enumerable collection of file names and directory names that match a search pattern in a specified path, and optionally searches subdirectories. | |
Exists | Determines whether the given path refers to an existing directory on disk. | |
GetAccessControl(String) | Gets a DirectorySecurity object that encapsulates the access control list (ACL) entries for a specified directory. | |
GetAccessControl(String, AccessControlSections) | Gets a DirectorySecurity object that encapsulates the specified type of access control list (ACL) entries for a specified directory. | |
GetCreationTime | Gets the creation date and time of a directory. | |
GetCreationTimeUtc | Gets the creation date and time, in Coordinated Universal Time (UTC) format, of a directory. | |
GetCurrentDirectory | Gets the current working directory of the application. | |
GetDirectories(String) | Gets the names of subdirectories in the specified directory. | |
GetDirectories(String, String) | Gets an array of directories matching the specified search pattern from the current directory. | |
GetDirectories(String, String, SearchOption) | Gets an array of directories matching the specified search pattern from the current directory, using a value to determine whether to search subdirectories. | |
GetDirectoryRoot | Returns the volume information, root information, or both for the specified path. | |
GetFiles(String) | Returns the names of files (including their paths) in the specified directory. | |
GetFiles(String, String) | Returns the names of files (including their paths) that match the specified search pattern in the specified directory. | |
GetFiles(String, String, SearchOption) | Returns the names of files (including their paths) that match the specified search pattern in the specified directory, using a value to determine whether to search subdirectories. | |
GetFileSystemEntries(String) | Returns the names of all files and subdirectories in the specified directory. | |
GetFileSystemEntries(String, String) | Returns an array of file system entries that match the specified search criteria. | |
GetFileSystemEntries(String, String, SearchOption) | Gets an array of all the file names and directory names that match a search pattern in a specified path, and optionally searches subdirectories. | |
GetLastAccessTime | Returns the date and time the specified file or directory was last accessed. | |
GetLastAccessTimeUtc | Returns the date and time, in Coordinated Universal Time (UTC) format, that the specified file or directory was last accessed. | |
GetLastWriteTime | Returns the date and time the specified file or directory was last written to. | |
GetLastWriteTimeUtc | Returns the date and time, in Coordinated Universal Time (UTC) format, that the specified file or directory was last written to. | |
GetLogicalDrives | Retrieves the names of the logical drives on this computer in the form "<drive letter>:\". | |
GetParent | Retrieves the parent directory of the specified path, including both absolute and relative paths. | |
Move | Moves a file or a directory and its contents to a new location. | |
SetAccessControl | Applies access control list (ACL) entries described by a DirectorySecurity object to the specified directory. | |
SetCreationTime | Sets the creation date and time for the specified file or directory. | |
SetCreationTimeUtc | Sets the creation date and time, in Coordinated Universal Time (UTC) format, for the specified file or directory. | |
SetCurrentDirectory | Sets the application's current working directory to the specified directory. | |
SetLastAccessTime | Sets the date and time the specified file or directory was last accessed. | |
SetLastAccessTimeUtc | Sets the date and time, in Coordinated Universal Time (UTC) format, that the specified file or directory was last accessed. | |
SetLastWriteTime | Sets the date and time a directory was last written to. | |
SetLastWriteTimeUtc | Sets the date and time, in Coordinated Universal Time (UTC) format, that a directory was last written to. |