实验七 期中练习

  • 实验目的及要求

**目的:**掌握File类的作用和使用方法,掌握运用文件字节输入输出流对文件进行操作,综合运用学过的知识。

要求:

(1)编写FileDemo类测试File类的常用方法

(2)用FileOutputStream类向文件中写入一串字符,然后用FileInputStream读出写入的内容

(3)综合运用学过的知识设计一个程序模拟银行的自动取款机ATM的使用过程

二、实验环境

计算机一台,JDK,EditPlus

三、实验原理

File类、FileInputStream类和FileOutputStream类的用法

四、实验内容与步骤

  1. 编写一个FileDemo类测试File类的如下主要方法。

(1) 访问属性

  1. boolean canRead()

测试File实例所指文件或目录是否可读。

  1. boolean canWrite()

测试File实例所指文件或目录是否可写。

  1. boolean exists()

测试File实例所标识的文件或目录是否存在。

  1. File getAbsoluteFile()

返回File实例的绝对路径。

  1. String getName()

返回由File实例表示的文件或目录的名称。

  1. String getParent()

返回File实例所指文件或目录的父目录的路径名,如果此路径名没有指定父目录,则返回null。

  1. String getPath()

返回File实例所表示的路径名。

  1. boolean isDirectory()

测试File实例所标识的文件是否是一个目录。

  1. boolean isFile()

测试File实例所标识的文件是否是一个标准文件。

(2) 新建、更名与删除

  1. boolean createNewFile()

当File实例所标识的文件不存在而其父路径存在时,新建一个空的普通文件并返回true。若文件已存在或不能被创建则返回false。

  1. boolean mkdir()

当File实例所标识的目录不存在而其父路径存在时,新建一个目录并返回true。

  1. boolean mkdirs()

当File实例所标识的目录不存时,新建一个目录以及父路径中的各级原先不存在的父目录,并返回true。

  1. boolean delete()

删除由File实例所指的文件或者目录。若删除的是目录,那么该目录必须为空。

  1. boolean renameTo(File dest)

将当前File实例所指的文件或者目录更改为由参数dest标识。该方法既可以实现文件或目录的更名,也可以实现文件或目录的移动。在实现移动时,方法会自动创建需要的各级父目录。

(3) 目录列表

  1. String[] list()

返回File实例所指目录中的所有文件或子目录的名字组成的字符串数组。若当前File实例表示的是普通文件而不是一个目录,则返回null。

  1. File[] listFiles()

如果File实例所指的不是一个目录,那么此方法将返回null。否则返回一个File对象数组,每个数组元素对应目录中的每个文件或目录。如果目录为空,那么数组也将为空。

  1. 用FileOutputStream类向文件中写入一串字符,然后用FileInputStream读出写入的内容。
  1. 模拟银行的自动取款机ATM 使用过程中的界面和用户交互过程

功能说明:

(1)模拟自动取款机(ATM)的流程,实现查询银行卡余额、取款、存款、退出系统等功能。

(2)取款金额受卡余额的限制。

(3)程序的运行过程如下图所示。

相关推荐
盖世英雄酱581365 分钟前
三五年前面试java都问的是什么问题
java·后端·面试
Lojarro13 分钟前
SpringBoot第三站:整合SpringMVC
java·spring boot·spring
心灵宝贝18 分钟前
Apache Tomcat 7.0.41安装指南 (附安装包)
java·tomcat·apache
print('name')23 分钟前
从Excel文件中读取数据
开发语言·数据结构·python·pycharm·excel·visual studio code
倔强的石头10627 分钟前
【C++经典例题】反转字符串中单词的字符顺序:两种实现方法详解
java·c++·算法
rider18940 分钟前
深入解析java Socket通信中的粘包与拆包问题及解决方案(中)
java·开发语言·websocket
Michael_lcf43 分钟前
kubernetes对于一个nginx服务的增删改查
java·nginx·kubernetes
程序视点1 小时前
Java中JDK里用到了哪些设计模式?让面试官眼前一亮!
java·设计模式
青云交1 小时前
Java 大视界 -- Java 大数据在智能政务舆情引导与公共危机管理中的应用(138)
java·大数据·数据采集·情感分析·政务·舆情引导·公共危机管理
码农不惑1 小时前
Qt开发:QtWebEngine中操作选择文本
开发语言·javascript·qt·web