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

平时使用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


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

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

        /// <summary>
        /// 删除文件夹及其下面的子文件和文件夹
        /// </summary>
        /// <param name="filePath"></param>
        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);
            }
        }

本文转自博客园伍华聪的博客,原文链接:如何利用系统函数操作文件夹及文件,如需转载请自行联系原博主。

时间: 2024-10-30 00:36:33

如何利用系统函数操作文件夹及文件的相关文章

C# 系统应用之ListView控件 (二).加载选中节点文件夹下文件信息

在项目中的前面一篇文章"C# 系统应用之TreeView控件 (一).显示树状磁盘文件目录及加载图标"中我讲述了如何使用TreeView控件树状实现显示"我的电脑"所有磁盘路径下的文件夹,并加载图标如下图所示. 此篇文章我需要讲述的是当鼠标点击左边的TreeView控件中的文件夹时,如何实现在右边的ListView控件中显示相应的文件,并显示文件的名称.大小.类型属性.主要运用的知识是如何实现ListView显示信息,Subitems()函数增加子项,如何设置列表头

asp.net C#文件操作(追加、拷贝、删除、移动文件、创建目录、递归删除文件夹及文件)

asp教程.net c#文件操作(追加.拷贝.删除.移动文件.创建目录.递归删除文件夹及文件) c#追加.拷贝.删除.移动文件.创建目录.递归删除文件夹及文件.指定文件夹下 面的所有内容copy到目标文件夹下面.指定文件夹下面的所有内容detele.读取文本文件.获取文件列表.读取日志文件.写入日志文件.创建html 文件.createdirectory方法的使用 c#追加文件 streamwriter sw = file.appendtext(server.mappath(".")+

在win7系统中怎么显示隐藏的文件夹或文件?

  可能由于某些文件中了病毒,在杀毒软件查杀后,会将该文件所在的文件夹隐藏起来,不管自己怎么找都找不到.这些文件就再也找不到了吗?答案当然是否定的!下面,小编就为大家演示(在win7系统下演示,其他windows操作系统操作方法类似),win7系统下隐藏的文件夹.文件怎么显示的问题. 方法一:通过计算机 1.打开计算机→选择计算机界面的"组织"按钮,如图1所示: 图1 2.选择组织按钮下拉菜单中的"文件夹和搜索选项",如图2所示: 图2 3.在新出现的文件夹选项界面

操作文件夹或文件的权限的命令行工具Icacls

  在Windows Vista和Windows Server 2003 Service Pack 2中,微软提供了一个新的命令行工具Icacls,你可以使用它来查看.设置.保存并恢复文件夹或文件的权限.它在功能上比以往的Cacls更为强大. ICACLS name /save aclfile [/T] [/C] [/L] [/Q] 将所有匹配名称的 ACL 存储到 aclfile 中以便将来用于 /restore. ICACLS directory [/substitute SidOld Si

Python文件夹与文件的操作实现代码_python

有关文件夹与文件的查找,删除等功能 在 os 模块中实现.使用时需先导入这个模块, 导入的方法是: import os 一.取得当前目录 s = os.getcwd() # s 中保存的是当前目录(即文件夹) 比如运行abc.py,那么输入该命令就会返回abc所在的文件夹位置. 举个简单例子,我们将abc.py放入A文件夹.并且希望不管将A文件夹放在硬盘的哪个位置,都可以在A文件夹内生成一个新文件夹.且文件夹的名字根据时间自动生成. import os import time folder =

Python文件夹与文件的相关操作(推荐)_python

最近在写的程序频繁地与文件操作打交道,这块比较弱,还好在百度上找到一篇不错的文章,这是原文传送门,我对原文稍做了些改动. 有关文件夹与文件的查找,删除等功能 在 os 模块中实现.使用时需先导入这个模块, 导入的方法是: import os 一.取得当前目录 s = os.getcwd() # s 中保存的是当前目录(即文件夹) 比如运行abc.py,那么输入该命令就会返回abc所在的文件夹位置. 举个简单例子,我们将abc.py放入A文件夹.并且希望不管将A文件夹放在硬盘的哪个位置,都可以在A

Python文件夹与文件的操作

转自该博客内容:http://www.cnblogs.com/yuxc/archive/2011/08/01/2124012.html ,放在此处用于本人记录 最近在写的程序频繁地与文件操作打交道,这块比较弱,还好在百度上找到一篇不错的文章,这是原文传送门,我对原文稍做了些改动. 有关文件夹与文件的查找,删除等功能 在 os 模块中实现.使用时需先导入这个模块, 导入的方法是: import os 一.取得当前目录 s = os.getcwd() # s 中保存的是当前目录(即文件夹) 比如运行

Asp.net对文件夹和文件的操作类

asp.net using System;using System.IO;using System.Web; namespace SEC{    /**//// <summary>    /// 对文件和文件夹的操作类    /// </summary>    public class FileControl    {        public FileControl()        {                    }        /**//// <summa

利用Fork/Join框架来统计某个字符串在某个文件夹的文件中出现的次数

需求:利用Fork/Join框架来统计某个字符串在某个文件夹的文件中出现的次数.主要用到的技术点:JDK8的Stream.Lambda表达式.Fork/Join框架. 如果对于Fork/Join不了解的话可以参考这里:http://www.infoq.com/cn/articles/fork-join-introduction.http://ifeve.com/fork-join-1/.http://www.iteye.com/topic/643724.主要代码如下: package com.z