命名空间:using system .IO;

1. File类:

创建:File.Create(路径);创建文件,返回FileStream

FileStream fs = File.Create(路径);之后需要关闭否则打不开,fs.close();

删除:File.Delete(路径);无返回值

复制文件:File.Copy(源文件,目标文件);

剪切文件:File.Move(源文件路径,目标路径);

判断文件是否存在:File.Exists(路径);返回布尔型,true代表已存在

文件加密:File.Encrypt();File.Decrypt();解密

File.GetCreationTime(路径);获取创建时间,返回DateTime类型 SetCreationTime(路径,DateTime类型);修改创建时间

File.GetLastAccessTime(路径);最后访问时间,返回DateTime类型 SetLastAccessTime(路径,DateTime类型);修改访问时间

File.GetLastWriteTime(路径);最后修改时间,返回DateTime类型 SetLastWriteTime(路径,DateTime类型);修改修改时间

2. Directory 类,目录(文件夹)

Directory .CreateDirectory(路径);创建目录

Directory .Delete(路径);删除目录

Directory .Exists(路径);目录是否存在

三个时间的get和set

Directory .GetDirectories(路径); 获取子目录,返回string数组

Directory .GetFiles(路径); 获取子文件!名!,返回string数组,string[] s = Directory .GetFiles(路径);

Directory .GetDirectoryRoot(路径); 获取根目录

Directory .GetParent(路径); 获取上一级目录


FileInfo 类

是实例方法,需要造对象new出来才能用,上面的都是File的静态方法

创建文件:FileInfo f = new FileInfo(路径); FileStream s = f.Create(); s.Close();

删除文件:FileInfo f = new FileInfo(路径); f.Delete();

复制文件:FileInfo f = new FileInfo(路径); f.CopyTo(目标路径,是否覆盖(true是覆盖));

移动文件:FileInfo f = new FileInfo(路径); f.MoveTo(目标路径);

文件是否存在:FileInfo f = new FileInfo(路径); bool b = f.Exists;布尔型,是个属性

获取文件名:FileInfo f = new FileInfo(路径);string s = f.FullName;属性,带路径的文件名

获得创建时间:DateTime d = f.CreationTime,三个时间都一样,都是属性

设置创建时间:f.CreationTime = DateTime.Now.AddDays(100); 三个都一样

获取文件大小:f.Length

DirectoryInfo 类

创建目录:DirectoryInfo d = new DirectoryInfo(路径); d.Create();

删除目录:d.Delete();

移动目录:d.MoveTo(目标路径);

目录是否存在:bool b = d.Exists;

获得目录全名:d.FullName;

获得子文件!对象信息!: FileInfo[] f = d.GetFiles(); 返回的是文件对象数组,内容更详细,d.GetFiles("*.exe")只获取exe的文件

获得子目录:DirectoryInfo[] dr = d.GetDirectories();

实例展示:读取目录大小

private long size = 0;
private long DirSize(string path)
{
DirectoryInfo d = new DirectoryInfo(path);
FileInfo[] f = d.GetFiles();
foreach (FileInfo wj in f)
{
size += wj.Length;
}

DirectoryInfo[] dr = d.GetDirectories();
if (dr.Count() > 0)
{
foreach (DirectoryInfo wjj in dr)
{
DirSize(wjj.FullName);
}
}

return size;
}

读取目录下面文件夹数量:

private int dcount = 0;
private int DirCount(string path)
{
DirectoryInfo d = new DirectoryInfo(path);

DirectoryInfo[] dr = d.GetDirectories();

if (dr.Count() > 0)
{
foreach (DirectoryInfo wjj in dr)
{
DirCount(wjj.FullName);
}
}

dcount += dr.Count();

return dcount;
}

读取所有文件数量:

private int count=0;
private int FileCount(string path)
{
DirectoryInfo d = new DirectoryInfo(path);
FileInfo[] f = d.GetFiles();

DirectoryInfo[] dr = d.GetDirectories();
if (dr.Count() > 0)
{
foreach (DirectoryInfo wjj in dr)
{
FileCount(wjj.FullName);
}
}

count += f.Count();

return count;
}

利用遍历集合查询文件夹下所有文件数量,文件夹数量:

private int fcount = 0;
private int FileCount(string path)
{
//造文件夹信息对象
DirectoryInfo dwjj = new DirectoryInfo(path);

//取当前文件夹下文件数量
fcount += dwjj.GetFiles().Length;

//取当前目录下所有文件夹
foreach (DirectoryInfo d in dwjj.GetDirectories())
{
FileCount(d.FullName);
}

return fcount;

}

private int dcount = 0;
private int DirCount(string path)
{
//造一个文件夹信息对象
DirectoryInfo d = new DirectoryInfo(path);

//取该目录下所有文件夹
DirectoryInfo[] df = d.GetDirectories();

//累加文件夹数量
dcount += df.Length;

//遍历所有文件夹
foreach (DirectoryInfo w in df)
{
DirCount(w.FullName);
}

return dcount;
}
文件及文件夹操作- File类、Directory 类、FileInfo 类、DirectoryInfo 类 - 柴亮 - 博客园
https://www.cnblogs.com/light3857/p/5849926.html

文件及文件夹操作- File类、Directory 类、FileInfo 类、DirectoryInfo 类相关推荐

  1. 解决 VS 无法打开包括文件: “XXX.h”: No such file or directory问题

    每次封装管理,当 Visual Studio 包含多个 .h 文件和 .c 文件,运行时总会发生如下错误 错误 C1083 无法打开包括文件: "XXX.h": No such f ...

  2. 【VC++2010无法debug】fatal error C1083: 无法打开包括文件:“stdio.h”: No such file or directory【问题解决】

    [VC++2010无法debug]fatal error C1083: 无法打开包括文件:"stdio.h": No such file or directory[问题解决] st ...

  3. 成功解决 _mssql.c(568): fatal error C1083: 无法打开包括文件: “sqlfront.h”: No such file or directory

    成功解决 _mssql.c(568): fatal error C1083: 无法打开包括文件: "sqlfront.h": No such file or directory 目 ...

  4. 无法打开包括文件:“osgGA/MatrixManipulator”:No such file or directory

    无法打开包括文件:"osgGA/MatrixManipulator":No such file or directory 解决方法: 新版本中已经改名为CameraManipula ...

  5. fatal error C1083: 无法打开包括文件:dxtrans.h: No such file or directory

    From: http://blog.csdn.net/pkueecser/article/details/7287938 fatal error C1083: 无法打开包括文件:"dxtra ...

  6. fatal error C1083: 无法打开包括文件:“stdint.h”: No such file or directory

    fatal error C1083: 无法打开包括文件:"stdint.h": No such file or directory [错误]fatal error C1083: 无 ...

  7. 无法打开包括文件: “ocl_macros.h”: No such file or directory

    并行处理显示错误: 无法打开包括文件: "ocl_macros.h": No such file or directory 尝试了在项目属性-C/C++-常规中将 '使用Windo ...

  8. fatal error C1083: 无法打开包括文件: “afx.h”: No such file or directory

      在用Visual Studio 2017打开一个工程进行编译时,报了如下错误: fatal error C1083: 无法打开包括文件: "afx.h": No such fi ...

  9. 《无法打开包括文件:“Eigen\Dense”:No such file or directory》亲测有效的解决方法

    无法打开包括文件:"Eigen\Dense":No such file or directory 综述问题 解决方法 综述问题 Eigen是c++使用中常用的处理矩阵的工具包,通常 ...

最新文章

  1. python 四数之和
  2. 5分钟学会区块链 - 开发一条区块链 Develop BlockChain with Tendermint
  3. 设计模式-原型模式(Prototype)
  4. 【Linux】一步一步学Linux——ctrlaltdel命令(198)
  5. 如何给UI上可以接收focus事件的element动态注册onfocus处理函数
  6. 自己动手开发编译器(我们的朋友 -- 装配脑袋走了)
  7. php扩展包安装了为啥没加载,已安装PHP扩展但未加载
  8. VS2013的boost.python编译
  9. jdi屏幕斜纹_荣耀V10屏幕有斜纹问题,有人甚至因此退货,真的这么严重?
  10. 云版 Android 系统来了?
  11. springboot 项目里使用spring.xml文件
  12. 洛必达法则及极限问题总结
  13. mysql 提示表不存在的解决方法error: 1146: Table doesn‘t exist
  14. jQuery贼简单的选项卡切换
  15. POJ 1417 True Liars (种类并查集+DP)
  16. 英汉互译在线翻译器-大家都在用的英汉互译翻译器
  17. [HoopChina]爱神的通牒
  18. xargs命令详解,xargs与管道的区别
  19. 单片机节日彩灯实训报告_单片机数字钟实训报告
  20. 2021年度十大开源SLAM算法

热门文章

  1. 多人共享协作画板——单机画板
  2. 有道云笔记中markdown插入本地图片(绝对路径)后无法显示图片问题
  3. 动物系列3D虚拟解剖软件助力畜牧兽医专业学习
  4. 2021年中国内燃机曲轴行业现状及竞争格局分析,高壁垒塑造曲轴行业高集中度,新能源汽车带动行业发展「图」
  5. vue配置api代理详解与使用方法
  6. 为什么Windows电脑开机速度会变得越来越慢?由原先的几秒到了几十秒。了解这些方法将会助你杜绝卡顿(推荐适合电脑小白使用的杀毒软件)
  7. 利用Python制作第一人称射击小游戏 含源代码
  8. ipconfig失败
  9. 群晖挂pt 路由器虚拟服务器设置,设置远程唤醒NAS要几步?用群晖路由只要4步!...
  10. matlab怎么语音时域采样频谱,基于MATLAB的时域信号采样及频谱分析