(转).NET的IO:Path、File、FileInfo、Directory、DirectoryInfo、DriveInfo、FileSystemWatcher

1.管理文件系统



一般而言,应用程序都会有保存数据、检索数据的需求。

1.1 使用 path 类来访问文件路径

【path常用的方法】:http://www.cnblogs.com/tangge/archive/2012/10/30/2746458.html#a3

1.2 使用 File 和 FileInfo 类访问文件

1.2.1 File 类


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

static void Main(string[] args)

{

    string sourceFileName = @"F:\a.txt"; //源文件

    string destFileName = @"c:\a.txt"; //目标文件

    //如果源文件不存在

    if (!File.Exists(sourceFileName))

    {

        File.Create(sourceFileName).Close();

    }

    //如果目标文件存在,先删除

    if (File.Exists(destFileName))

    {

        File.Delete(destFileName);

    }

    File.Copy(sourceFileName, destFileName);

    File.Delete(sourceFileName);

}

重复记录

string sourceFileName = @"F:\a.txt"; //源文件
            string destFileName = @"c:\a.txt"; //目标文件

            StreamWriter sw = File.AppendText(destFileName);
            sw.WriteLine(string.Format("{0}复制完毕", DateTime.Now));
            sw.Flush();
            sw.Close();

1.2.2 FileInfo 类

Length

private static void Main(string[] args)
        {
            string path = @"E:\中天IT\视频\DVD-ASP.NET\DVD-张波.NETC1001\IO详解——张波.NETC1001\1上次复习_作业讲解.avi";
            FileInfo fi = new FileInfo(path);
            Console.WriteLine(
                string.Format("本文件为{0:#.00}M", fi.Length / (1024 * 1024)));
        }

1.3 使用Directory 和 DirectoryInfo 类访问目录

1.3.1 Directory 类

string path = @"F:\tt\aeg\www";
            if (Directory.Exists(path))
            {
                Directory.Delete(path);
            }
            else
            {
                Directory.CreateDirectory(path);
            }

string path = @"F:\tt\aeg";

            //GetFiles 检索文件列表
            string[] aa= Directory.GetFiles(path);
            foreach (var a in aa)
            {
                Console.WriteLine(a);
            }

            Console.WriteLine("------------");
            //GetDirectories 检索文件夹列表
            foreach (var s in Directory.GetDirectories(path))
            {
                Console.WriteLine(s);
            }

            Console.WriteLine("------------");
            //GetDirectories 检索文件夹和文件列表
            foreach (var s in Directory.GetFileSystemEntries(path))
            {
                Console.WriteLine(s);
            }

1.3.2 DirectoryInfo 类

1.4 使用 DriveInfo 类访问驱动器

Console.WriteLine("驱动器{0},类型为{1},",dr.Name,dr.DriveType);
                //if (dr.IsReady)
                //{
                    Console.WriteLine("可用空间为{0}", dr.AvailableFreeSpace);
                //}

Console.WriteLine("驱动器{0},类型为{1},", dr.Name, dr.DriveType);
                if (dr.IsReady)//设备已经准备好
                {
                    Console.WriteLine("\t可用空间为{0}G", dr.AvailableFreeSpace/(1024*1024*1024)); //41G
                    Console.WriteLine("\t分区格式为{0}\n",dr.DriveFormat);   //NTFS
                }

1.5 FileSystemWatcher 类

2.使用字节流

3.管理应用程序数据

4.高效操作字符串

时间: 2024-10-12 17:43:23

(转).NET的IO:Path、File、FileInfo、Directory、DirectoryInfo、DriveInfo、FileSystemWatcher的相关文章

小项目:mini资源管理器【使用IO流:包含(Directory与DirectoryInfo、File与FileInfo的用法)】

主界面是这样的 1.在点击查询引发的事件时把TextBox.Text输入的目录地址加载到TreeList控件里. private void btnSelect_Click(object sender, EventArgs e) { //避免重复加载tv.Nodes.Clear(); ////Load事件手动添加根节点TreeNode tn = new TreeNode(); tn.Text = tbxName.Text;//根节点名字:tn.Tag = tbxName.Text;//根节点物理地

$PATH No such file or directory

LinuxMint下使用Terminal输入 $PATH 显示 bash: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games: No such file or directory 一直以为环境变量有什么问题,原来正确查看环境变量的方法是 echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:

java.io.IOException: Cannot run program "/opt/jdk1.8.0_191/bin/java" (in directory "/var/lib/jenkins/workspace/xinguan"): error=2, No such file or directory

测试jenkins构建,报错如下 Parsing POMs Established TCP socket on 44463 [xinguan] $ /opt/jdk1.8.0_191/bin/java -cp /var/lib/jenkins/plugins/maven-plugin/WEB-INF/lib/maven35-agent-1.13.jar:/opt/maven-3.6/boot/plexus-classworlds-2.5.2.jar:/opt/maven-3.6/conf/log

C# 文件/文件夹一般操作(File、Directory)

C#常用文件操作在 System.IO 命名类库中有:File.Directory; 一. 1.文件(File) 操作: 文件创建:File.Create(filePath); ----在指定路径中创建或覆盖文件 文件删除:File.Delete(filePath); 判断文件是否存在:File.Exists(filePath) 复制文件到另一地址:File.Copy(string sourceFileName, string destFileName); ----将现有文件复制到新文件. 不允

Mac下报错'WARN security.UserGroupInformation: PriviledgedActionException as:用户名...No such file or directory'的一种解决方法

Mac下使用IDEA远程连接Hadoop调试MapReduce程序,参考网上博客,总会出现如题报错,下面是我在mac下的一种解决办法,可以参考. 前期准备 如果想远程调试,需要做一些准备工作,简单罗列下. (1)在本地准备一份了hadoop(有博主直接从集群中copy一份),设置环境变量. # hadoop路径为具体路径export HADOOP_HOME=/Users/yangchaolin/hadoop2.6.0/hadoop-2.6.0-cdh5.14.0 (2)IDEA工程下,将本地ha

cnmp安装失败,报错npm ERR! enoent ENOENT: no such file or directory,

1.cnmp安装失败 2.提示如下: bogon:node_modules liangjingming$ sudo npm install cnpm -g --registry=https://registry.npm.taobao.org Password: /usr/local/lib └── (empty) npm ERR! Darwin 16.4.0 npm ERR! argv "/usr/local/Cellar/node/7.8.0/bin/node" "/usr

snort在使用过程中遇到的问题:ERROR: OpenAlertFile() => fopen() alert file log/alert.ids:No such file or directory

转自:http://www.cnblogs.com/kathmi/archive/2010/08/09/1795405.html Snort是著名的开源入侵检测工具,不仅它的嗅探功能极佳,在服务器安全方面也可提供安全防护. 近期因为涉及此项内容,故记录下来. 使用的软件如下: Snort_2_8_6_Installer.exe(按照默认路进安装即可) WinPcap_4_1_2.exe snortrules-snapshot-2860.tar.gz(规则库,解压到Snort的安装目录,如果提示重

minGW安装出错gcc: error: CreateProcess: No such file or directory

我用的是在线安装的方式,调试的时候,出现以下错误: 23:23:45 **** Rebuild of configuration Debug for project helloworld_c ****Info: Internal Builder is used for buildgcc -O0 -g3 -Wall -c -fmessage-length=0 -o helloworld.o "..\\helloworld.c" gcc: error: CreateProcess: No 

libdb2.so.1: cannot open shared object file: No such file or directory

[[email protected] bin]# ./dsmserv ./dsmserv: error while loading shared libraries: libdb2.so.1: cannot open shared object file: No such file or directory [[email protected] bin]# pwd /opt/tivoli/tsm/server/bin Resolving the problem The below steps m

Spring Boot + Jersey发生FileNotFoundException (No such file or directory)

我在使用Spring Boot + Jersey 项目,解决了上一篇随笔中的FileNotFoundException,然后又报了一个FileNotFoundException,不过报错信息不一样了 报错信息如下: ERROR o.a.c.c.C.[Tomcat].[localhost].[/] - StandardWrapper.Throwable org.glassfish.hk2.api.MultiException: A MultiException has 1 exceptions.