您的位置:首页 > 其它

如何利用系统函数操作文件夹及文件

2008-06-05 07:32 459 查看
平时使用Path类不多,常用Combine来串联两个路径,其他的很少用,偶然发现Path提供了很多方便实用的函数。

名称 说明

ChangeExtension 更改路径字符串的扩展名。

Combine 合并两个路径字符串。

GetDirectoryName 返回指定路径字符串的目录信息。

GetExtension 返回指定的路径字符串的扩展名。

GetFileName 返回指定路径字符串的文件名和扩展名。

GetFileNameWithoutExtension 返回不具有扩展名的指定路径字符串的文件名。

GetFullPath 返回指定路径字符串的绝对路径。

GetInvalidFileNameChars 获取包含不允许在文件名中使用的字符的数组。

GetInvalidPathChars 获取包含不允许在路径名中使用的字符的数组。

GetPathRoot 获取指定路径的根目录信息。

GetRandomFileName 返回随机文件夹名或文件名。

GetTempFileName 创建磁盘上唯一命名的零字节的临时文件并返回该文件的完整路径。

GetTempPath 返回当前系统的临时文件夹的路径。

HasExtension 确定路径是否包括文件扩展名。

IsPathRooted 获取一个值,该值指示指定的路径字符串是包含绝对路径信息还是包含相对路径信息。

我比较喜欢那个GetTempPath 函数,一句代码就可以返回临时目录的路径了,很方便,大家可能也注意到,Environment.GetEnvironmentVariable(string variable)也提供了如何获取特别路径的函数,另外

Environment.GetFolderPath(Environment.SpecialFolder folder)的函数也提供了很多实用功能,返回相应的目录,枚举包含有:

EnvironmentSpecialFolder 枚举

成员名称 说明

ApplicationData 目录,它用作当前漫游用户的应用程序特定数据的公共储存库。

CommonApplicationData 目录,它用作所有用户使用的应用程序特定数据的公共储存库。

LocalApplicationData 目录,它用作当前非漫游用户使用的应用程序特定数据的公共储存库。

Cookies 用作 Internet Cookie 的公共储存库的目录。

Desktop 逻辑桌面,而不是物理文件系统位置。

Favorites 用作用户收藏夹项的公共储存库的目录。

History 用作 Internet 历史记录项的公共储存库的目录。

InternetCache 用作 Internet 临时文件的公共储存库的目录。

Programs 包含用户程序组的目录。

MyComputer "我的电脑"文件夹。

MyMusic "My Music"文件夹。

MyPictures "My Pictures"文件夹。

Recent 包含用户最近使用过的文档的目录。

SendTo 包含"发送"菜单项的目录。

StartMenu 包含"开始"菜单项的目录。

Startup 对应于用户的"启动"程序组的目录。

System "System"目录。

Templates 用作文档模板的公共储存库的目录。

DesktopDirectory 用于物理上存储桌面上的文件对象的目录。

Personal 用作文档的公共储存库的目录。

MyDocuments "我的电脑"文件夹。

ProgramFiles "Program files"目录。

CommonProgramFiles 用于应用程序间共享的组件的目录

最后我顺便提供一个递归删除文件夹和文件的操作函数,方便大家

/**////

/// 删除文件夹及其下面的子文件和文件夹

///

///

public static void DeleteSubFileAndFolder(string filePath)

{

if (Directory.Exists(filePath))

{

foreach (string path in Directory.GetFileSystemEntries(filePath))

{

if (File.Exists(path))

{

File.Delete(path);

}

else

{

DeleteSubFileAndFolder(path);

}

}

Directory.Delete(filePath);

}

}

转载请注明出处:

撰写人:伍华聪 http://www.iqidi.com
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: