电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

C#程序设计及应用教程 第2版 教学课件 ppt 马骏 第7章 目录与文件管理

29页
  • 卖家[上传人]:E****
  • 文档编号:89343022
  • 上传时间:2019-05-23
  • 文档格式:PPT
  • 文档大小:454KB
  • / 29 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、第7章 目录与文件管理,7.1 系统环境相关类 7.2 目录管理 7.3 文件管理 7.4 文件的读写 7.5 FileSystemWatcher组件,7.1 系统环境相关类,.NET框架下,有与系统环境相关类。 1. Environment类 该类除了提供当前环境和操作系统平台相关的信息外,还提供了获取本地逻辑驱动器和特殊文件夹的方法。 2. DriveInfo类 提供了本地驱动器相关的详细信息。,7.1.1 Environment类,1.常用的属性和方法 CurrentDirectory属性 OSVersion属性 NewLine属性 Version属性 GetLogicalDrives方法 GetFolderPath方法,7.1.2 DriveInfo类,使用DriveInfo可以确定当前可用的驱动器以及这些驱动器的类型,还可以通过查询来确定驱动器的容量和剩余空间。 DriveInfo allDrives = DriveInfo.GetDrives( ); foreach (DriveInfo d in allDrives) Console.WriteLine(“Drive 0“

      2、, d.Name); Console.WriteLine(“文件类型: 0“, d.DriveType); if (d.IsReady = true) Console.WriteLine(“卷标: 0“, d.VolumeLabel); Console.WriteLine(“文件系统: 0“, d.DriveFormat); Console.WriteLine(“当前用户可用空间:0 bytes“, d.AvailableFreeSpace); Console.WriteLine(“总可用空间:0 bytes“, d.TotalFreeSpace); Console.WriteLine(“驱动器总容量:0 bytes “, d.TotalSize); ,7.2 目录管理,在System.IO命名空间中,.NET框架提供了3种对目录进行管理的类,分别是Directory类、DirectoryInfo类和Path类。 1.Directory类和DirectoryInfo类 区别:Directory类(只提供静态方法) DirectoryInfo类(需要实例化才能使用) DirectoryI

      3、nfo类的构造函数形式如下: public DirectoryInfo( string path); 参数path表示目录所在的路径。例如: DirectoryInfo dirInfo = new DirectoryInfo(“e:temp“); 注意:(1)path是合法的路径。 (2)用System.Environment.SpecialFolder下的枚举可以获取特殊文件夹路径。,7.2 目录管理,2.DirectoryInfo类的主要属性 Exists FullName Parent CreationTime 3.Directory类提供的静态方法 CreateDirectory Delete Move Exists GetCurrentDirectory,7.2.2 Path类,1. Path类用于对包含文件或目录路径信息的String实例执行操作。 2. 常用方法: GetDirectoryName方法 GetExtension方法 GetFileName方法 GetFileNameWithoutExtension方法 GetFullPath方法,7.2.3 目录的创建、删

      4、除和移动,1.创建目录 Directory类的CreateDirectory方法用于创建指定路径中的所有目录。 public static DirectoryInfo CreateDirectory (string path)其中参数path为要创建的目录路径。 举例: Directory.CreateDirectory(“c:test“); Directory.CreateDirectory(“c:testt1t2“);,7.2.3 目录的创建、删除和移动,2.删除目录 Directory类的Delete方法用于删除指定的目录,常用的方法原型为 public static void Delete(string path, bool recursive) 其中:path参数不区分大小写,可以是相对于当前工作目录的相对路径,也可以是绝对路径。recursive是一个布尔值,如果要移除path中的目录(包括所有子目录和文件),则为true;否则为false。,7.2.3 目录的创建、删除和移动,3.移动目录 Directory类的Move方法能够重命名或移动目录。方法原型为 public

      5、static void Move (string sourceDirName, string destDirName) 其中,sourceDirName为要移动的文件或目录的路径;destDirName为新位置的目标路径。 注意: destDirName参数指定的目标路径应为新目录。,7.2.4 FolderBrowserDialog对话框,FolderBrowserDialog对话框以树形控件的形式将指定路径的文件夹及其子文件夹显示出来,供用户浏览、创建或选择。 调用FolderBrowserDialog的ShowDialog方法,可以打开对话框,如果用户在对话框中单击【确定】按钮,则对话框返回结果为DialogResult.OK,否则为DialogResult.Cancel。,7.2.4 FolderBrowserDialog控件,3. FolderBrowserDialog控件的主要属性 :,7.3 文件管理,System.IO命名空间中文件操作类: (1)File (2)FileInfo 相同点:都能完成对文件的复制、移动、重命名、创建、打开、删除和追加到文件操作。 不同点:F

      6、ileInfo类提供实例化后的属性、方法 File 只提供静态方法 用法与Directory和DirectoryInfo相似。,7.3.1 文件复制、删除与移动,File类 (1)判断文件是否存在 调用File类的Exist方法可以判断是否存在指定的文件。 (2)复制文件 Copy (sourceFileName, destFileName,bool overwrite) (2) 删除文件 Delete (string path) (3) 移动文件 Move (sourceFileName, destFileName) 注意:Move方法不提供创建目录的功能,要确保存在目标文件目录。,7.3.2 文件属性,1.设置或获取属性 (1) 对File类:用SetAttributes方法,GetAttributes方法设置、获取。 (2) 对FileInfo类:用Attributes属性设置、获取。 (3)注意: FileAttributes的每个枚举值代表目录或者文件的一个属性,各个枚举值是按照2的幂排列的,即依次为20,21,22, 23 , 2.可以利用“与”、“或”操作设置或获取单个属

      7、性。,7.3.2 文件属性与设置(续),2.判断某个路径是目录还是文件 下面的代码演示了如何判断某个路径是目录还是文件: if (File.GetAttributes(path) ,7.3.4 OpenFileDialog控件和SaveFileDialog,1. 功能:用于显示用户打开文件的对话框。 2. 常用属性:,3. 常用方法:ShowDialog(),7.3.4 OpenFileDialog控件和SaveFileDialog,1.SaveFileDialog用于显示保存文件对话框,提示用户选择文件的保存位置。 2.调用SaveFileDialog的ShowDialog方法,将打开【另存为】对话框,如果用户在对话框中单击【保存】按钮,则保存该文件,并返回DialogResult.OK,否则返回DialogResult.Cancel。,【例7-1】利用FolderBrowerDialog、OpenFileDialog和SaveFileDialog对话框,设计一个Windows应用程序,实现将文件从一个目录复制到另一个目录的功能。,对话框控件综合举例,7.4 文件的读写,在Syste

      8、m.IO命名空间中,提供了多种类用于进行数据文件和数据流的读写操作。 主要有: 1. 文件编码,提供了多种编码。 2. 文本文件的读写。 3. 二进制文件的读写。,7.4.1 文件的编码,1.文件编码 常见的文件编码方式有ASCII编码、Unicode编码、UTF8编码和ANSI编码。 2.在System.Text命名空间中,有一个Encoding类,用于表示字符编码。对文件进行操作时,常用的编码方式有 Encoding.Default 表示操作系统的当前ANSI编码 Encoding.Unicode Unicode编码 Encoding.UTF8 UTF8编码,7.4.2 文本文件的读写,File类提供了非常方便的读写文本文件的方法。 1ReadAllText方法和AppendAllText方法 ReadAllText方法打开一个文件,读取文件的每一行,将每一行添加为字符串的一个元素。然后关闭文件。 常用原型为 public static string ReadAllText(string path, Encoding encoding) AppendAllText方法用于将指定的字

      9、符串追加到文件中,如果文件不存在则自动创建该文件,常用原型为 public static void AppendAllText(string path, string contents, Encoding encoding),7.4.2 文本文件的读写,2、ReadAllLines方法和WriteAllLines方法 ReadAllLines方法打开一个文本文件,将文件的所有行都读入一个字符串数组,然后关闭该文件。 WriteAllLines方法创建一个新文件,在其中写入指定的字符串数组,然后关闭文件。如果目标文件已存在,则覆盖该文件 3StreamReader类和StreamWriter类 流是字节序列的抽象概念。流也是进行数据读取操作的基本对象,流提供了连续的字节流存储空间。 流有如下几种操作。 读取:从流中读取数据到变量中。 写入:把变量中的数据写入到流中。 定位:重新设置流的当前位置,以便随机读写。,7.4.2 文本文件的读写,StreamReader类提供了利用流来按行读取文本文件信息的方法。如果不指定编码,StreamReader的默认编码为UTF-8,而不是当前系统的ANSI编码。 StreamWriter类提供了按行写入文本信息的方法。与StreamReader类似,如果不指定编码,StreamWriter默认使用UTF-8编码,而不是当前系统的ANSI编码。 File类的Open方法先创建一个FileStream对象,然后使用FileStream对象对文件进行读取、写入、打开和关闭操作。,7.4.3 二进制文件的读写,例7-2:将随机产生的二进制数据写入文件,并验证写入结果是否正确。 Random r = new Random(); byte writeArray = new byte10; /用随机数填充指定字节数组的元素 r.NextBytes(writeArray); Console.WriteLine(“数组中的数据:“); for (int i = 0; i writeArray.Length; i+) Console.WriteLine(“w0=1“, i, writeArrayi); ,7.4.3 二进制文件的

      《C#程序设计及应用教程 第2版 教学课件 ppt 马骏 第7章 目录与文件管理》由会员E****分享,可在线阅读,更多相关《C#程序设计及应用教程 第2版 教学课件 ppt 马骏 第7章 目录与文件管理》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结 2022年家长会心得体会集合15篇
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.