- 1、本文档共82页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 文件I/O操作 管理和读写文件信息的功能将使得应用程序的用途更多,利用C#语言编程能很容易实现这些操作。本章详细介绍了C#语言为我们提供的多个可以用于文件I/O操作的类及其使用方法。另外,流也是本章需要理解的一个重要概念,通过它对文件读写更加灵活方便。 5.1 用于文件操作的类 在计算机中,我们通过文件的形式把各种数据、文档、程序等软件资源永久性存储在各种媒质上(可移动磁盘、硬盘、CD等),并可以对它们进行读取、修改、复制、移动和删除等操作。文件是一种进行数据读写操作的有效方法,为了更方便地使用文件,操作系统中采用目录树的方法对文件进行管理,一个目录可以包含若干个文件和子目录,由此构成了一个由文件和目录组成的庞大的树状存储系统。在Windows系统中,我们习惯上把目录称为文件夹。 我们在编写一个较完整的应用程序时,肯定要涉及到对系统和用户的信息进行存储、读取、修改等操作,还常常需要设计自己的文件格式。因此,有效地实现文件操作,是一个良好的应用程序所必须具备的内容。C#语言为我们提供了多个可以用于文件操作的类,如图5-1所示,利用它们,可以很容易地实现对文件的存储管理、对文件的读写等各种操作。下面,我们给出几个可以常用于文件操作的类。 C#语言为我们提供了多个可以用于文件操作的类,利用它们,可以很容易地实现对文件的存储管理、对文件的读写等各种操作。下面,我们给出几个可以常用于文件操作的类。 Directory 类:提供多个对目录和子目录进行创建、移动和枚举的静态方法。DirectoryInfo 类:提供多个对目录和子目录进行创建、移动和枚举的实例方法。File 类:提供用于创建、复制、删除、移动和打开文件的静态方法,并协助创建FileStream类对象。 FileInfo类:提供用于创建、复制、删除、移动和打开文件的实例方法,并协助创建FileStream类对象。 FileStream类:支持通过其 Seek 方法随机访问文件。默认情况下,FileStream 以同步方式打开文件,但它也支持异步操作。 FileSystemInfo类:是 FileInfo类 和 DirectoryInfo类 的抽象基类。 Path类:提供以跨平台的方式处理目录字符串的方法和属性。 如果在程序中使用这些类,需要引入这些类所在的名称空间,即在程序源文件的最前面加入语句 using System.IO; ,否者,系统将无法识别这些类。 5.2 目录和路径操作 5.2.1 Directory类 Directory 类既可以用来复制、移动、重命名、创建和删除目录,也可用来获取和设置与目录的创建、访问及写入操作相关的时间信息。Directory类是无状态的,它的成员函数全部都是静态的,每次执行前都要进行安全检查。Directory 类主要成员函数如表5-1所示: 表5-1 Directory 类的主要成员函数 - 案例:练习使用Directory 类 目标:掌握Directory 类及其部分主要方法的使用技巧 步骤: 1、启动VS.NET,新建一个控制台应用程序,名称填写为“DirectoryTest”,位置设置为“c:\CSharpSamples\chp5”。 2、在代码设计窗口中编辑Class1.cs。其中的代码编写如下: using System; using System.IO; namespace DirectoryTest { class DirectoryTest { public static void Main() { // 指定您想要操作的目录 string source = @c:\SourceDir; string target = @c:\TargetDir; try { // 判断目录是否存在 if (!Directory.Exists(source)) { // 如果源目录不存在则创建它 Directory.CreateDirectory(source); } if (Directory.Exists(target)) {// 如果目标目录存在则删除它 Directory.Delete(target, true); } // 移动目录,就是把源目录移动到目标目录,更直接地说,就是把由source指定的源目录内所有文件和子目录都移动到由target指定的目标目录中去,同时删除了源目录。 Directory.Move(source, target); //返回目标目录被创建、
您可能关注的文档
- AutoCAD 2008实用教程 -宋小春 第9章 标注尺寸.ppt
- AutoCAD 2008实用教程 -宋小春 第11章 块、参照和设计中心.ppt
- AutoCAD 2008中文版案例教程 -苏玉雄 第1章.ppt
- AutoCAD 2008中文版案例教程 -苏玉雄 第3章.ppt
- AutoCAD 2008中文版案例教程 -苏玉雄 第4章.ppt
- AutoCAD 2008中文版案例教程 -苏玉雄 第6章.ppt
- AutoCAD 2008中文版案例教程 -苏玉雄 第7章.ppt
- AutoCAD 2008中文版案例教程 -苏玉雄 第8章.ppt
- AutoCAD 2008中文版案例教程 -苏玉雄 第10章.ppt
- AutoCAD 2009工程绘图技术 -覃国萍 第1章AutoCAD 2009基础知识.ppt
- 2024年江西省高考政治试卷真题(含答案逐题解析).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)物理试卷(含答案详解).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)地理试卷(含答案详解).pdf
- 2024年内蒙通辽市中考化学试卷(含答案逐题解析).docx
- 2024年四川省攀枝花市中考化学试卷真题(含答案详解).docx
- (一模)长春市2025届高三质量监测(一)化学试卷(含答案).pdf
- 2024年安徽省高考政治试卷(含答案逐题解析).pdf
- (一模)长春市2025届高三质量监测(一)生物试卷(含答案).pdf
- 2024年湖南省高考政治试卷真题(含答案逐题解析).docx
- 2024年安徽省高考政治试卷(含答案逐题解析).docx
文档评论(0)