《游戏开发实战教程(Unity+C#)-(6)自考成人专科本科课件.pptx》由会员分享,可在线阅读,更多相关《游戏开发实战教程(Unity+C#)-(6)自考成人专科本科课件.pptx(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、游戏开发实战教程游戏开发实战教程 (Unity+C#Unity+C#)第第 6 6 章章 目 录 和 文 件 操 作目 录 和 文 件 操 作目录目录 CONTENTSCONTENTS6.1目录管理016.2文件管理026.3文件的读写03内容简述目录及文件管理是操作系统的一个重要组成部分,包括目录的创建、移动、删除和文件的创建、移动、复制、删除以及对文件的读写等操作。一个完整的应用程序,常常会涉及到对系统和用户的信息进行存储、读取和修改等处理。因此,如何有效地实现目录和文件操作也是必须掌握的一种技术。Directory类和DirectoryInfo类用于对磁盘和目录进行操作管理;File类和
2、FileInfo类用于对文件进行创建、复制、移动、删除和打开等操作。而StreamReader和StreamWriter等类则可以用于对文件以“流”的方式进行读写操作。6.1 6.1 目录管理目录管理在System.IO命名空间中,.NET框架提供了Directory类和DirectoryInfo类。这两个类均可用于对磁盘和目录进行操作管理,如复制、移动、重命名、创建和删除目录,获取和设置与目录的创建、访问及写入操作相关的时间信息。DirectoryInfo类与Directory类的不同点在于DirectoryInfo类必须被实例化后才能使用,而Directory类则只提供了静态的方法。实际编
3、程中,如果多次使用某个对象,一般用DirectoryInfo类;如果仅执行某一个操作,则使用Directory类提供的静态方法效率更高一些。1.目录的创建目录的创建 Directory类的CreateDirectory方法用于创建指定路径中的所有目录。方法原型为:public static DirectoryInfo CreateDirectory(string path)其中参数path为要创建的目录路径。2 2目录的删除目录的删除 Directory类的Delete方法用于删除指定的目录,该方法有两种重载的形式:1)public static void Delete(string path
4、)参数path为要移除的空目录的名称。6.1.1 目目录录的的创创建、建、删删除与移除与移动动1.目录的创建目录的创建 Directory类的CreateDirectory方法用于创建指定路径中的所有目录。方法原型为:public static DirectoryInfo CreateDirectory(string path)其中参数path为要创建的目录路径。2 2目录的删除目录的删除 Directory类的Delete方法用于删除指定的目录,该方法有两种重载的形式:1)public static void Delete(string path)参数path为要移除的空目录的名称。6.1.
5、1 目目录录的的创创建、建、删删除与移除与移动动3.目录的移动目录的移动 Directory类的Move方法能够重命名或移动目录。方法原型为:public static void Move(string sourceDirName,string destDirName)其中:sourceDirName为要移动的文件或目录的路径;destDirName为指向sourceDirName的新位置的目标路径。6.1.1 目目录录的的创创建、建、删删除与移除与移动动6.2 6.2 文件管理文件管理 File类和FileInfo类为FileStream对象的创建和文件的创建、复制、移动、删除、打开等提供了
6、支持。使用File类和FileInfo类对文件进行操作时,用户必须具备相应的权限,如读、写等权限,否则将会引发异常。FileInfo类与File类均能完成对文件的操作,不同点在于FileInfo类必须被实例化,并且每个FileInfo的实例必须对应于系统中一个实际存在的文件。由于所有File类提供的方法都是静态的,所以如果只想执行一个操作,那么使用File方法的效率比使用相应的FileInfo实例方法可能更高。如果打算多次重用某个对象,可考虑使用FileInfo的实例方法,而不是File类的相应静态方法。1.1.文件复制文件复制 File类的Copy方法用于将现有文件复制到新文件。方法原型为:
7、public static void Copy(string sourceFileName,string destFileName)其中参数sourceFileName为要复制的文件;destFileName为目标文件的名称,它不能是一个目录或现有文件。2.2.文件删除文件删除 File类的Delete方法用于删除指定的文件。如果指定的文件不存在,则不引发异常。方法原型为:public static void Delete(string path)参数path为要删除的文件的名称。3.3.文件移动文件移动 File类的Move方法用于将指定文件移到新位置,并提供指定新文件名的选项。方法原型为:
8、public static void Move(string sourceFileName,string destFileName)参数sourceFileName为要移动的文件名称,destFileName为文件的新路径。6.2.1 文件复制、文件复制、删删除与移除与移动动1.1.文件属性的设置文件属性的设置 对文件的属性FileAttributes进行设置,可以使用File类的SetAttributes方法。方法原型为:public static void SetAttributes(string path,FileAttributes fileAttributes)参数path为该文件的
9、路径,fileAttributes为所需的FileAttributes枚举值。2.文件属性的获取文件属性的获取 获取指定路径上文件的属性FileAttributes,可以使用File类的GetAttributes方法。方法原型为:public static FileAttributes GetAttributes(string path)参数path为该文件的路径。6.2.2 文件属性与文件属性与设设置置6.3 6.3 文件的读写文件的读写 文件(file)和流(stream)既有区别又有联系。文件是在各种媒质上(可移动磁盘、硬盘、光盘等)永久存储的数据的有序集合。它是一种进行数据读写操作的基
10、本对象。通常情况下,文件按照树状目录进行组织,每个文件都有文件名、文件所在路径、创建时间、访问权限等属性。流是字节序列的抽象概念,例如文件、输入输出设备、内部进程通信管道或者TCP/IP套接字等均可以看成流。简言之,流是一种向后备存储器写入字节和从后备存储器读取字节的方式。6.3.2 6.3.2 文件的打开文件的打开 打开指定路径上的FileStream,可以使用File类的Open方法或OpenRead方法或OpenText方法。利用Open方法打开文件的方式有三种:名称说明 File.Open(String,FileMode)打开指定路径上的 FileStream,具有读/写访问权限Fil
11、e.Open(String,FileMode,FileAccess)以指定的模式和访问权限打开指定路径上的 FileStreamFile.Open(String,FileMode,FileAccess,FileShare)打开指定路径上的FileStream,具有指定的读、写或读/写访问模式以及指定的共享选项6.3.3 6.3.3 文本文件的读写文本文件的读写利用Open方法打开文件后,可以用StreamReader类来读取文件的内容,用StreamWriter类向文件写入内容,它们提供了按文本模式读写数据的方法。下面示例中用到的OpenText方法是File类的一个静态方法,不能被某个具体的
12、File类的实例调用,它表示从一个已经存在的文本文件中读取一个文本流,并保存在一个StreamReader实例中。6.3.4 6.3.4 二进制文件的读写二进制文件的读写 System.IO还为我们提供了BinaryReader和BinaryWriter类,用于按二进制模式读写文件。它们提供的一些读写方法是对称的,比如针对不同的数据结构,BinaryReader提供了ReadByte、ReadBoolean、ReadInt、ReadInt16、ReadDouble、ReadString等方法,而BinaryWriter则提供了WriteByte、WriteBoolean、WriteInt、Wr
13、iteInt16、WriteDoubleWriteString方法。本本 章章 小小 结结(1)File 类和FileInfo类都可以对文件进行创建、复制、删除、移动、打开、读取以及获取文件的基本信息等操作。(2)File类支持对文件的基本操作,包括提供用于创建、复制、删除、移动和打开文件的静态方法,并协助创建FileStream对象。由于所有的File类的方法都是静态的,所以如果只想执行一个操作,那么使用File方法的效率比使用相应的FileInfo实例方法可能更高。(3)Directory类和DirectoryInfo类都可以对文件夹进行创建、移动、浏览目录及其子目录等操作。(4)Directory类用于文件夹的典型操作,如复制、移动、重命名、创建和删除等,另外,也可将其用于获取和设置与目录的创建、访问及写入操作相关的DateTime信息。(5)数据流提供了一种向后备存储写入字节和从后备存储读取字节的方式,它是在.NET Framework中执行读写文件操作时一种非常重要的介质。(6).NET Framework使用流来支持读取和写入文件,开发人员可以将流视为一组连续的一维数据,包含开头和结尾,并且其中的游标指示了流中的当前位置。谢谢谢谢