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 类

 

        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.高效操作字符串

C#回顾 - 2.NET的IO:Path、File、FileInfo、Directory、DirectoryInfo、DriveInfo、FileSystemWatcher的更多相关文章

  1. File,FileInfo,Directory,DirectoryInfo

    两者的共同点:  一:都用于典型的操作,如复制.移动.重命名.创建.打开.删除和追加到文件   二:默认情况下,将向所有用户授予对新文件的完全读/写访问权限.  两者的区别:   File类是静态类, ...

  2. 【C# IO 操作】 Path 路径类 |Directory类 |DirectoryInfo 类|DriveInfo类|File类|FileInfo类|FileStream类

    Directory类 Directory类 是一个静态类,常用的地方为创建目录和目录管理. 一下来看看它提供的操作. 1.CreateDirectory 根据指定路径创建目录.有重载,允许一次过创建多 ...

  3. Java学习之IO之File类二

    之前学了File便想把我学习视频的名字改了,因为文件名太长不好看,便试着写了个功能实现 package com.gh.file; import java.io.File; /** * 批量文件命名 * ...

  4. IO以及file的一些基本方法

    IO定义:将内存的数据 持久化到设备上 这个动作称为输出 写 Output操作 把硬盘上的数据读取到内存 这个动作称为输入 读 Input 把上面这两种操作称为IO操作 File类的静态成员变量:pa ...

  5. IO流-file

    1.1 IO概述 回想之前写过的程序,数据都是在内存中,一旦程序运行结束,这些数据都没有了,等下次再想使用这些数据,可是已经没有了.那怎么办呢?能不能把运算完的数据都保存下来,下次程序启动的时候,再把 ...

  6. System.IO.Path文件路径类

    Path类的静态属性和方法,此类操作不影响物料文件. 属性 char a = System.IO.Path.VolumeSeparatorChar;//: char b = System.IO.Pat ...

  7. npm安装socket.io时报错的解决方法(npm WARN enoent ENOENT: no such file or directory, open '/usr/local/nodejs/bin/package.json')

    执行 npm install socket.io安装时报错: [root@WEB node_modules]# npm install socket.ionpm WARN enoent ENOENT: ...

  8. Path类与Directory类与File类

    阅读目录 开始 Path 对路径 字符串进行操作 获得后缀 能合并路径 获取文件名 Directory和DirectoryInfo  对目录进行操作 判断目录是否存在 创建目录 删除目录 获取目录下所 ...

  9. IO流-File,字节流,缓冲流

    1.1 IO概述 回想之前写过的程序,数据都是在内存中,一旦程序运行结束,这些数据都没有了,等下次再想使用这些数据,可是已经没有了.那怎么办呢?能不能把运算完的数据都保存下来,下次程序启动的时候,再把 ...

  10. JAVA基础--IO输入输出(File使用)17

    一. File中的方法 1.  列举方法 /* * 获取指定目录以及子目录下的所有文件和文件夹 */ public class ListFilesDemo { public static void m ...

随机推荐

  1. 流畅web动画的十个法则

    from me: web动画能够带来一个非常酷炫的效果,能够让页面有一个更好的用户体验.对于良好的动画性能没有高招,除了将大量的时间放在测试和优化,当然最重要的还是要易于维护. 流畅web动画的十大法 ...

  2. HDU 1159 裸最长公共子串

    试着拍了一道模板题 dp开了500,开100会超时..... string类型中间有空格会判为结束 #include<algorithm> -->min,max函数的头文件 #inc ...

  3. NOIP2015 斗地主

    Sol 暴力搜索...不用搜1,2张的情况,直接统计出来就可以了. 还有处理一下2和大王小王的位置,扔到最后面或者最前面就可以了. 搜索就搜 3+3,2+2+2,1+1+1+1+1 这三个就可以了. ...

  4. 时间和日期控件(Calendar1)

    取得选择的: taskItem["data"] = Calendar1.SelectedDate.ToShortDateString();

  5. Qt5.4 MSVC mysql驱动编译;

    http://www.mysql.com/ 下载mysql http://download.qt.io/archive/qt/     Qt 下载 1. mysql安装源码 注意勾选这一步,将mysq ...

  6. pypi 国内镜像 及修改全局方法

    PyPi的官方网站为https://pypi.python.org,有时访问中会很慢,使用pip命令安装带其他依赖包的安装包,会经常失败.解决办法,使用国内PyPi镜像网站,修改pip的源. 网上搜索 ...

  7. 77 找出最大连续自然数个数[Longest Consecutive Sequence in an Unsorted Array]

    [本文链接] http://www.cnblogs.com/hellogiser/p/Longest-Consecutive-Sequence-in-an-Unsorted-Array.html [题 ...

  8. DELPHI XE5开发WEB服务器及安卓手机客户端

    Xe5开发web服务端和手机客户端 ------------------------------------- Delphi xe5作为最新开发利器,就类似如当年的DELPHI,功能强大,快发速度快, ...

  9. opencart 引入 TWIG 模板引擎

     1.首先将 twig 包放入 system\library 目录. 2.在 system/startup.php 文件最后添加引入语句. require_once(DIR_SYSTEM . 'lib ...

  10. SAP 凭证类别

    文章摘要:基本分为收.付.转三类,和传统的会计凭证分类一样.SA,总帐凭证.(转帐凭证)KA,供应商凭证.(付款凭证)KR,应付供应商凭证.(付款凭证)KG,供应商转来的红字发票,SAP称为贷方凭证. ...