- 实验目的及要求
目的:通过实验掌握java提供的输入/输出包中类的使用,特别是一些常用的类的方法的使用,运用流的概念实现对象的序列化。
要求:
(1)编写程序使用BufferedReader和BufferedWriter对文件进行操作;
(2)编写对象序列化与解序列化的验证程序;
(3)编写从文件中读写不同格式、不同数据类型的数据。
二、实验环境
计算机一台,JDK,EditPlus
三、实验原理
File类、常用I/O流的用法,对象序列化
四、实验内容与步骤
1. BufferedReader和BufferedWriter的使用。程序运行后,在命令提示符下输入字符,程序会将输入的字符存储至指定的文件中,如果要结束程序,输入quit字符串即可。
2. 利用序列化存储和恢复游戏人物。
3. 运用学过的输入流从test1.txt文件中读取一个整数矩阵,并将读入的数组输出到文件answer1.txt中,输入样例如下:
3 4
11 12 13 14
21 22 23 24
31 32 33 34
2 3
10 11 12
20 21 22
0 0
第一行3 4表示将要读入3行4列的矩阵,接下来的3行为矩阵内容,最后一行的0 0表示结束,则输出到answer1.txt中的结果为:
11 12 13 14
21 22 23 24
31 32 33 34
10 11 12
20 21 22
示例程序如下:
. 要求把程序3程序修改为读取字符数组
test2.txt文件中的输入样例如下:
3 4
ABCDE
FGHIJ
KLMNO
2 3
AAA
BBB
0 0
输出文件answer2.txt中的结果为
ABCDE
FGHIJ
KLMNO
AAA
BBB
5. 从文件test3.txt中读取数据并将其输出到answer3.txt中
test3.txt文件中的内容:
12;123.4;23.5
answer3.txt文件中的结果为:
12
123.4
23.5
6.实验完成项目
(1)试利用流操作进行编程,要求从键盘输入一个文本文件的名字,在屏幕上显示该文本文件内容及文件的路径、修改时间、大小、长度、可读性和可修改性等属性。文件名通过命令行以参数方式输入。程序需要判断参数所提供文件的存在性。
(2)编程实现以下功能:
①从键盘输入姓名、学号、成绩,并保存到文本文档中。重复进行,直到输入空字符串为止。
②从文件中读取各学生的成绩,并计算所有学生成绩的平均值、最大值和最小值。