电子教案·《Java程序设计实例教程》.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《电子教案·《Java程序设计实例教程》.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java程序设计实例教程 电子 教案 Java 程序设计 实例教程
- 资源描述:
-
1、本章学习关于文件的编程,包括本章学习关于文件的编程,包括4 4部分内容,即:选择文件对部分内容,即:选择文件对话框、对文件的操作、文件的读写和运行可执行文件。学习本话框、对文件的操作、文件的读写和运行可执行文件。学习本章应掌握以下内容:章应掌握以下内容:掌握调用文件对话框并选择一个文件或文件夹的方法。掌握调用文件对话框并选择一个文件或文件夹的方法。掌握数据流、字符流、字节流的概念和顺序读写文件、随机掌握数据流、字符流、字节流的概念和顺序读写文件、随机 读写文件的概念。读写文件的概念。掌握使用流技术读写文本文件和二进制文件的方法。掌握使用流技术读写文本文件和二进制文件的方法。掌握文件的各种操作,
2、包括获取和设置文件的属性、创建文掌握文件的各种操作,包括获取和设置文件的属性、创建文 件夹、文件和文件夹的重命名、文件和文件夹的删除等等。件夹、文件和文件夹的重命名、文件和文件夹的删除等等。掌握在掌握在JavaJava程序中调用可执行文件的方法。程序中调用可执行文件的方法。本章学习目标本章学习目标 10.1 10.1 文件对话框类文件对话框类FileDialogFileDialog 文件对话框文件对话框FileDialogFileDialog类是对话框类是对话框DialogDialog的子类,专门用于的子类,专门用于从对话框中选择一个文件。文件对话框有打开文件对话框和保存从对话框中选择一个文件
3、。文件对话框有打开文件对话框和保存文件对话框两种,究竟使用哪一种,由构造函数的参数决定。文件对话框两种,究竟使用哪一种,由构造函数的参数决定。相对文件对话框相对文件对话框FileDialogFileDialog而言对话框而言对话框DialogDialog是万能的,但是万能的,但是用户要做更多的编程工作;而文件对话框功能单一,使用方便。是用户要做更多的编程工作;而文件对话框功能单一,使用方便。1 1创建文件对话框创建文件对话框 文件对话框的构造方法有三种形式,其中第三种更为常用,文件对话框的构造方法有三种形式,其中第三种更为常用,如表如表10-110-1所示。所示。10.1 10.1 文件对话框
4、类文件对话框类FileDialogFileDialog 表表10-1 10-1 文件对话框的构造方法文件对话框的构造方法构造方法解释public FileDialog(Frame parent)创建一个参数创建一个参数parent指定拥有者的文件对话框指定拥有者的文件对话框public FileDialog(Frame parent,String title)创建一个参数创建一个参数parent指定拥有者、参数指定拥有者、参数title指定指定标题的文件对话框标题的文件对话框public FileDialog(Frame parent,String title,int mode)创建一个参数创
5、建一个参数parent指定拥有者、参数指定拥有者、参数title指定指定标题、参数标题、参数mode指定对话框类型的文件对话框。指定对话框类型的文件对话框。Mode的可取值为的可取值为FileDialog.LOAD 对话框中有对话框中有“打开打开”按钮按钮FileDialog.SAVE 对话框中有对话框中有“保存保存”按钮按钮 2 2文件对话框的常用方法文件对话框的常用方法 文件对话框的方法主要用于对文件对话框的特性进行设置以及获取选文件对话框的方法主要用于对文件对话框的特性进行设置以及获取选择的结果,除了从择的结果,除了从DialogDialog类继承的方法之外,常用的方法见表类继承的方法之
6、外,常用的方法见表10-210-2所列。所列。10.1 10.1 文件对话框类文件对话框类FileDialogFileDialog 表表10-2 10-2 文件对话框的常用方法文件对话框的常用方法常用方法常用方法解释解释public String getDirectory()取得目录字符串取得目录字符串public void setDirectory(String dir)根据字符串设置目录根据字符串设置目录public String getFile()取得用户选择的文件名,如果用户单击取得用户选择的文件名,如果用户单击“取消取消”而没有选择文件,则返回为空而没有选择文件,则返回为空publi
7、c void setFile(String file)设置待用户选择的默认的文件名设置待用户选择的默认的文件名public void setFilenameFilter(FilenameFilter filter)设置文件名过滤器设置文件名过滤器 实例实例 使用对话框选择文件使用对话框选择文件 方法方法1 1:显式地创建窗口事件适配器类:显式地创建窗口事件适配器类 方法方法2 2:创建窗口事件适配器对象时嵌套创建适配器类:创建窗口事件适配器对象时嵌套创建适配器类 方法方法3 3:创建窗口事件适配器对象时嵌套创建适配器类:创建窗口事件适配器对象时嵌套创建适配器类10.2 10.2 文件类文件类F
8、ileFile 要对文件进行读写等操作,需要使用文件类要对文件进行读写等操作,需要使用文件类FileFile,本节介绍文件类的,本节介绍文件类的基本内容。表基本内容。表10-310-3给出了文件类的构造方法。需要说明的是,文件类实例给出了文件类的构造方法。需要说明的是,文件类实例化以后得到一个文件对象,但是文件对象并不是一个具体的文件。化以后得到一个文件对象,但是文件对象并不是一个具体的文件。表表10-3 10-3 文件类的构造方法文件类的构造方法构造方法构造方法解释解释public File(String pathname)根据文件名创建文件对象,文件名包根据文件名创建文件对象,文件名包括路
9、径括路径public File(String parent,String child)根据目录名和文件名创建文件对象,根据目录名和文件名创建文件对象,文件名不包括路径文件名不包括路径public File(File parent,String child)根据文件对象和文件名创建文件对象,根据文件对象和文件名创建文件对象,文件名不包括路径文件名不包括路径 在这在这3 3个构造方法中,方法个构造方法中,方法1 1最为简单,但是如果要在同一目录中创建最为简单,但是如果要在同一目录中创建多个文件,由于方法多个文件,由于方法2 2和方法和方法3 3的文件名和目录是分开的,使用起来更加方的文件名和目录是
10、分开的,使用起来更加方便。便。10.2 10.2 文件类文件类FileFile 考虑到不同的操作系统的路径分隔符是不同的,而考虑到不同的操作系统的路径分隔符是不同的,而JavaJava语言是跨平台的语言是跨平台的编程语言,所以编程语言,所以JavaJava在文件类中定义了一些静态的类变量用于表示这些分在文件类中定义了一些静态的类变量用于表示这些分隔符,当程序运行在不同平台上时,这些分隔符自动变为该平台的分隔符,隔符,当程序运行在不同平台上时,这些分隔符自动变为该平台的分隔符,见表见表10-410-4。表表10-4 10-4 文件类的静态类变量文件类的静态类变量类变量类变量解释解释public
11、static final String pathSeparator用字符串表示的路径分隔符,用于分隔多个路径,对用字符串表示的路径分隔符,用于分隔多个路径,对于于Windows系统是字符串系统是字符串;public static final char pathSeparatorChar用字符表示的路径分隔符,用于分隔多个路径,对于用字符表示的路径分隔符,用于分隔多个路径,对于Windows系统是字符系统是字符;public static final String separator用字符串表示的路径字符串分隔符,对于用字符串表示的路径字符串分隔符,对于Windows系系统是字符串统是字符串pu
12、blic static final char separatorChar用字符表示的路径字符串分隔符,对于用字符表示的路径字符串分隔符,对于Windows系统系统是字符是字符10.2 10.2 文件类文件类FileFile FileFile类提供了许多文件操作的方法,表类提供了许多文件操作的方法,表10-510-5给出了其中最常用给出了其中最常用的方法,在的方法,在10.610.6节将给出一个调用这些方法的例子。节将给出一个调用这些方法的例子。表表10-5 File10-5 File类的常用方法类的常用方法常用方法常用方法解释解释public boolean createNewFile()创建
13、文件对象对应的文件创建文件对象对应的文件public boolean delete()删除文件对象对应的文件或空的目录删除文件对象对应的文件或空的目录public boolean exists()判断文件对象对应的文件或目录是否存在判断文件对象对应的文件或目录是否存在public boolean mkdir()创建文件对象对应的目录创建文件对象对应的目录public boolean renameTo(File dest)更改文件对象对应的文件名,参数更改文件对象对应的文件名,参数dest指定新指定新的文件对象的文件对象public boolean setReadOnly()设置文件对象对应的属
14、性为只读设置文件对象对应的属性为只读public File getParentFile()获取父文件对象获取父文件对象10.2 10.2 文件类文件类FileFile常用方法常用方法解释解释public File listFiles()获取目录中所有文件对象存放在文件数组获取目录中所有文件对象存放在文件数组public long lastModified()获取最后一次修改时间,如果文件不存在或发生获取最后一次修改时间,如果文件不存在或发生其他错误,返回其他错误,返回0Lpublic long length()获取文件对象对应文件的长度(字节数)获取文件对象对应文件的长度(字节数)public
15、 String getAbsolutePath()获取文件对象对应的绝对路径获取文件对象对应的绝对路径public String getName()获取文件对象对应的文件名获取文件对象对应的文件名public String getParent()获取文件对象的父目录字符串获取文件对象的父目录字符串public String getPath()获取文件对象的目录字符串获取文件对象的目录字符串public String toString()获取文件对象字符串获取文件对象字符串public String list()获取目录中所有文件名存放在字符串数组获取目录中所有文件名存放在字符串数组public
16、 boolean canRead()判断文件是否可读判断文件是否可读public boolean canWrite()判断文件是否可写判断文件是否可写public boolean isDirectory()判断是不是目录判断是不是目录10.3 10.3 流的概念流的概念10.3.1 10.3.1 数据流的概念数据流的概念 所有程序都离不开输入和输出,在所有程序都离不开输入和输出,在JavaJava语言中输入输出都是语言中输入输出都是通过数据流来实现的。数据流(通过数据流来实现的。数据流(streamstream)是一组有顺序的、有起)是一组有顺序的、有起点和终点的字节集合,是对输入输出的抽象。
17、包括从键盘接受数点和终点的字节集合,是对输入输出的抽象。包括从键盘接受数据、读写文件、打印输出等操作,都是数据流。据、读写文件、打印输出等操作,都是数据流。JavaJava对数据流操对数据流操作的类都在作的类都在java.iojava.io包中。包中。数据流分为输入流(数据流分为输入流(InputStreamInputStream)和输出流()和输出流(OutStreamOutStream)两种,输入流只能读不能写,用来输入数据,例如从键盘、文件两种,输入流只能读不能写,用来输入数据,例如从键盘、文件输入数据等。而输出流只能写不能读,用来输出数据,例如向显输入数据等。而输出流只能写不能读,用来
18、输出数据,例如向显示器、打印机、文件输出数据等。引入数据流概念的目的是使程示器、打印机、文件输出数据等。引入数据流概念的目的是使程序的输入输出操作与具体的设备无关,从而使程序员在程序设计序的输入输出操作与具体的设备无关,从而使程序员在程序设计时根本不用考虑那些输入输出设备是如何工作的时根本不用考虑那些输入输出设备是如何工作的。10.3 10.3 流的概念流的概念 对数据流的操作是以字节为单位进行的,虽然看起来是输入或对数据流的操作是以字节为单位进行的,虽然看起来是输入或输出一个字节,但是实际的物理过程却不是这样。为了提高数据传输出一个字节,但是实际的物理过程却不是这样。为了提高数据传输的效率,
19、通常使用缓冲区(输的效率,通常使用缓冲区(bufferbuffer)技术,缓冲区是专门用于数)技术,缓冲区是专门用于数据输入输出的一块内存。据输入输出的一块内存。当向输出设备输出(写)数据时,并不是直接把数据输出到输当向输出设备输出(写)数据时,并不是直接把数据输出到输出设备,而是写到缓冲去,只有两种情况才真正进行写的物理操作,出设备,而是写到缓冲去,只有两种情况才真正进行写的物理操作,一种情况是缓冲区已满,另一种情况则是程序发出了强制写的指令,一种情况是缓冲区已满,另一种情况则是程序发出了强制写的指令,例如关闭文件时。例如关闭文件时。同样道理,当程序从输入设备读取数据时,也总是在缓冲区中同样
20、道理,当程序从输入设备读取数据时,也总是在缓冲区中找有没有欲读取的数据,如果有,直接从缓冲区中获取数据,如果找有没有欲读取的数据,如果有,直接从缓冲区中获取数据,如果没有,再从输入设备物理地读取,并且每次物理读取都尽可能多地没有,再从输入设备物理地读取,并且每次物理读取都尽可能多地读取数据,通常是读满整个缓冲区,以备下一次读取所用。读取数据,通常是读满整个缓冲区,以备下一次读取所用。10.3 10.3 流的概念流的概念10.3.2 10.3.2 标准的输入输出标准的输入输出 标准输入输出的概念来自于标准输入输出的概念来自于DOSDOS,是在字符方式下程序与系,是在字符方式下程序与系统设备进行交
21、互的方式,包括标准输入、标准输出和标准错误输统设备进行交互的方式,包括标准输入、标准输出和标准错误输出。标准输入的对象是键盘,标准输出和标准错误输出的对象都出。标准输入的对象是键盘,标准输出和标准错误输出的对象都是显示器。是显示器。Java Java通过系统类通过系统类SystemSystem实现标准输入输出功能,实现标准输入输出功能,SystemSystem类位类位于于java.langjava.lang包中,使用包中,使用SystemSystem类是最终类(类是最终类(finalfinal)不需(也允)不需(也允许)创建其对象,可以直接使用,例如前面程序中经常使用的许)创建其对象,可以直接
22、使用,例如前面程序中经常使用的 System.out.println(String Message);System.out.println(String Message);就是这样的用法。就是这样的用法。System System类有类有3 3个成员列于表个成员列于表10-610-6中,注意这中,注意这3 3个成员对象的数个成员对象的数据类型分别是下面要介绍的字节输入流类据类型分别是下面要介绍的字节输入流类InputStreamInputStream和打印输和打印输出流类出流类PrintStreamPrintStream。10.3 10.3 流的概念流的概念 表表10-6 System10-6
23、 System类的成员类的成员 标准输入输出对象标准输入输出对象inin和和outout经常配合输入流类经常配合输入流类InputStreamInputStream和输出和输出流类流类PrintStreamPrintStream的方法使用,象下面的样子:的方法使用,象下面的样子:System.in.read();System.in.read();System.out.print(String Message);System.out.print(String Message);System.out.println(String Message);System.out.println(String
24、 Message);实例实例 标准输入输出标准输入输出成员成员解释解释public static final InputStream in标准输入对象标准输入对象public static final PrintStream out标准输出对象标准输出对象public static final PrintStream err标准错误输出对象标准错误输出对象10.3 10.3 流的概念流的概念10.3.3 java.io10.3.3 java.io包中的数据流类包中的数据流类 java.io java.io包支持二进制字节流(包支持二进制字节流(binary streambinary strea
25、m,简称字节流),简称字节流)和字符流(和字符流(character streamcharacter stream),字节流和字符流的区别是,字),字节流和字符流的区别是,字符流用于传输纯文本,而字节流可以传输各种数据。由于符流用于传输纯文本,而字节流可以传输各种数据。由于JavaJava使使用的是用的是1616位的位的UnicodeUnicode码,所以对于每一个字符要传输两个字节,码,所以对于每一个字符要传输两个字节,先传输高字节,再传输低字节。字节流除了也能传输纯文本以外,先传输高字节,再传输低字节。字节流除了也能传输纯文本以外,还可以传输程序的可执行代码、图片、声音、视频等等其他数据。
展开阅读全文