1. 本周学习总结
1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容。
2. 面向系统综合设计-图书馆管理系统或购物车
2.1 简述如何使用流与文件改造你的系统。文件中数据的格式如何?
答:图书馆管理系统我使用ObjectInputStream和FileInputStream流,ObjectOutputStream和FileOutputStream逝进行文件信息的读取和保存,
存入当中的数据是通过User数组去储存,用对象流写入文件。
2.2 简述系统中文件读写部分使用了流与文件相关的什么接口与类?为什么要用这些接口与类?
答:用到了InputStream和outputStream接口中的ObjectOutputStream和FileOutputStream类,并且用这些类直接保存用户信息
以确保读取文件时不出错。
2.3 截图读写文件相关代码。关键行需要加注释。
我负责的主要是用户登录模块的部分:
代码如下:
3. 代码量统计
3.1 统计本周完成的代码量
周次 | 总代码量 | 新增代码量 | 总文件数 | 新增文件数 |
---|---|---|---|---|
1 | 0 | 0 | 0 | 0 |
2 | 0 | 0 | 0 | 0 |
3 | 502 | 502 | 5 | 5 |
4 | 1102 | 600 | 8 | 3 |
5 | 1783 | 681 | 14 | 6 |
6 | 2216 | 433 | 20 | 6 |
7 | 2833 | 617 | 28 | 8 |
8 | 3146 | 313 | 33 | 5 |
9 | 3380 | 234 | 38 | 5 |
10 | 3743 | 363 | 42 | 4 |
11 | 4073 | 330 | 47 | 5 |
12 | 4433 | 370 | 56 | 9 |
13 | 5023 | 590 | 62 | 6 |
选做:4. 流与文件学习指导
4.1. 字符流与文本文件:使用 PrintWriter(写),BufferedReader(读)
将Student对象(属性:int id, String name,int age,double grade)写入文件student.data、从文件读出显示。
4.1.1 生成的三个学生对象,使用PrintWriter的println方法写入student.txt,每行一个学生,学生的每个属性之间用|作为分隔。使用Scanner或者BufferedReader将student.txt的数据读出。(截图关键代码,出现学号)
4.1.2 生成文件大小多少(使用右键文件属性查看)?分析该文件大小
答:生成文件大小为48字节,id为1字节,name为4字节,age为2字节,空格为1字节×3,grade为4字节,换行1字节。
4.1.3 如果调用PrintWriter的println方法,但在后面不close。文件大小是多少?为什么?
答:如果调用PrintWriter的println方法,但后面不close,文件大小为0字节,因为close方法会自动调用flush()方法,将数据写入缓存区,如果不close的话,数据将会丢失。