- 实验目的及要求
**目的:**掌握File类的作用和使用方法,掌握运用文件字节输入输出流对文件进行操作,综合运用学过的知识。
要求:
(1)编写FileDemo类测试File类的常用方法
(2)用FileOutputStream类向文件中写入一串字符,然后用FileInputStream读出写入的内容
(3)综合运用学过的知识设计一个程序模拟银行的自动取款机ATM的使用过程
二、实验环境
计算机一台,JDK,EditPlus
三、实验原理
File类、FileInputStream类和FileOutputStream类的用法
四、实验内容与步骤
- 编写一个FileDemo类测试File类的如下主要方法。
(1) 访问属性
- boolean canRead()
测试File实例所指文件或目录是否可读。
- boolean canWrite()
测试File实例所指文件或目录是否可写。
- boolean exists()
测试File实例所标识的文件或目录是否存在。
- File getAbsoluteFile()
返回File实例的绝对路径。
- String getName()
返回由File实例表示的文件或目录的名称。
- String getParent()
返回File实例所指文件或目录的父目录的路径名,如果此路径名没有指定父目录,则返回null。
- String getPath()
返回File实例所表示的路径名。
- boolean isDirectory()
测试File实例所标识的文件是否是一个目录。
- boolean isFile()
测试File实例所标识的文件是否是一个标准文件。
(2) 新建、更名与删除
- boolean createNewFile()
当File实例所标识的文件不存在而其父路径存在时,新建一个空的普通文件并返回true。若文件已存在或不能被创建则返回false。
- boolean mkdir()
当File实例所标识的目录不存在而其父路径存在时,新建一个目录并返回true。
- boolean mkdirs()
当File实例所标识的目录不存时,新建一个目录以及父路径中的各级原先不存在的父目录,并返回true。
- boolean delete()
删除由File实例所指的文件或者目录。若删除的是目录,那么该目录必须为空。
- boolean renameTo(File dest)
将当前File实例所指的文件或者目录更改为由参数dest标识。该方法既可以实现文件或目录的更名,也可以实现文件或目录的移动。在实现移动时,方法会自动创建需要的各级父目录。
(3) 目录列表
- String[] list()
返回File实例所指目录中的所有文件或子目录的名字组成的字符串数组。若当前File实例表示的是普通文件而不是一个目录,则返回null。
- File[] listFiles()
如果File实例所指的不是一个目录,那么此方法将返回null。否则返回一个File对象数组,每个数组元素对应目录中的每个文件或目录。如果目录为空,那么数组也将为空。
- 用FileOutputStream类向文件中写入一串字符,然后用FileInputStream读出写入的内容。
- 模拟银行的自动取款机ATM 使用过程中的界面和用户交互过程
功能说明:
(1)模拟自动取款机(ATM)的流程,实现查询银行卡余额、取款、存款、退出系统等功能。
(2)取款金额受卡余额的限制。
(3)程序的运行过程如下图所示。