C#文件操作

转载自:http://www.myluoluo.com/file_operations.love


介绍

.Net框架中提供了强大的类库进行文件操作,相关的类都在System.IO命名空间中

System.IO里面定义了一系列的类、接口、枚举、和委托等

在C#中,操作文件和文件夹的实用类都集中在System.IO这个命名空间中

System.IO提供了四个类型来实现来对单个文件或者文件夹的操作

Directory与DirectoryInfo这两个类用来实现对文件夹的相关操作
File与FileInfo这两个类用来实现对文件的相关操作

文中介绍的属性以及方法可能不全,介绍的全为常用属性!

继承关系

Directory与File这两个类直接继承自Object类,并且这两个类为静态类

DirectoryInfo与FileInfo为实例类,也就是说,需要实例化才能进行相关操作

Directory类

Directory上面已经写到,它是一个静态类,包含了创建、移动、删除和枚举所有文件夹/子文件夹的成员

方  法说  明
Delete(String,Boolean)删除指定的文件夹(如果指示)并删除该文件夹下任何子文件夹
GetDirectories(string)获取指定文件夹中子文件夹的名称,并返回一个表示当前文件夹中所有子文件夹的名称数组string[]
GetFiles(string)返回指定文件夹中文件的名称数组string[]
Move(string,string)将一个文件夹及其内容移动到一个新的路径
GetLogicalDrives()返回逻辑驱动器表

Directory类操作演示

DirectoryInfo类

DirectoryInfo与Directory类相似,对目录进行各种操作.不同之处是需要实例化后才能使用.

属  性说  明
Parent获取指定子目录的父目录DirectoryInfo对象
Root获取路径的跟DirectoryInfo对象
Name返回目录的名称
CreationTime当前 FileSystemInfo 对象的创建日期和时间
Exists获取目录是否存在,如果目录存在,则为 true,否则为 false
FullName获取目录的完整路径
方  法说  明
Create()创建目录
Delete()如果目录为空,则删除该文件夹
Delete(bool)删除该目录,指定是否删除该目录下的子文件或文件夹
GetFiles()获取该目录下的文件返回FileInfo数组
GetDirectories()获取该目录下的所有文件夹,返回DirectoryInfo数组
CreateSubdirectory(string)创建子目录
MoveTo()将该文件夹移动到新位置

DirectoryInfo类操作演示

File类

File于Directory相同是一个静态类,它只包含静态成员.在使用时都不需要实例化,而是直接使用类名.方法()的方式调用

方  法说  明
Exists(string)用于检查指定文件是否存在,该方法返回一个布尔值
Copy(String, String)将现有文件复制为新文件,不允许覆盖同名的文件
Move(String,String)将指定文件移动到一个新的路径
Delete(string)删除指定文件,不存在会引发异常,调用前最好先做判断是否存在

File类演示

FileInfo类

FileInfo类能够获取硬盘上现有的文件的详细信息(创建时间,大小,文件特征等),并帮助我们创建,复制,移动和删除文件,与DirectoryInfo类相识,该类需要实例化

属  性说  明
Exists检查文件是否存在,返回一个布尔值
Extension获取文件扩展名
Name获取文件名
FullName获取文件的完整路径
Length获取当前文件的大小
方  法说明
CopyTo(string)将现有文件复制到新文件,不允许覆盖
CopyTo(string,bool)将现有文件复制到新文件,允许覆盖
Delete()永久删除该文件
MoveTo(string)将现有文件移动到新位置,不允许覆盖

先看效果: https://renmaiwang.cn/s/jkhfz Hue系列产品将具备高度的个性化定制能力,并且借助内置红、蓝、绿三原色LED的灯泡,能够混合生成1600万种不同色彩的灯光。 整个操作流程完全由安装于iPhone上的应用程序进行管理。 这一创新举措为智能照明控制领域带来了新的启示,国内相关领域的从业者也积极投身于相关研究。 鉴于Hue产品采用WiFi无线连接方式,而国内WiFi网络尚未全面覆盖,本研究选择应用更为普及的蓝牙技术,通过手机蓝牙与单片机进行数据交互,进而产生可调节占空比的PWM信号,以此来控制LED驱动电路,实现LED的调光功能以及DIY调色方案。 本文重点阐述了一种基于手机蓝牙通信的LED灯设计方案,该方案受到飞利浦Hue智能灯泡的启发,但考虑到国内WiFi网络的覆盖限制,故而选用更为通用的蓝牙技术。 以下为相关技术细节的详尽介绍:1. **智能照明控制系统**:智能照明控制系统允许用户借助手机应用程序实现远程控制照明设备,提供个性化的调光及色彩调整功能。 飞利浦Hue作为行业领先者,通过红、蓝、绿三原色LED的混合,能够呈现1600万种颜色,实现了全面的定制化体验。 2. **蓝牙通信技术**:蓝牙技术是一种低成本、短距离的无线传输方案,工作于2.4GHz ISM频段,具备即插即用和强抗干扰能力。 蓝牙协议栈由硬件层和软件层构成,提供通用访问Profile、服务发现应用Profile以及串口Profiles等丰富功能,确保不同设备间的良好互操作性。 3. **脉冲宽度调制调光**:脉冲宽度调制(PWM)是一种高效能的调光方式,通过调节脉冲宽度来控制LED的亮度。 当PWM频率超过200Hz时,人眼无法察觉明显的闪烁现象。 占空比指的...
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值