IO实现快递存储的思路:

    IO是专门操作数据的,bean类只是数据的模板,不需要更改,view类只负责跟控制台交互,获取并返回用户的输入,也不需要更改。所以只要往DAO类里面添加方法就可以了。在创建DAO对象的时候,添加读取文件和解析数据的操作,在数据变动的时候,添加写入文件的操作。

    一、先约定好数据格式,比如,第一行存放目前空闲的快递柜箱号,箱号之间用空格隔开;之后每一行存放一个包裹的信息,每个包裹有两个String字段,两个int字段,分别用空格隔开。
    这个格式是通过调用ExpressDao的backup方法来写到文件里的,为了兼顾数据的完整和程序的效率,每次主循环都会调用一次backup,把所有数据重新写一遍进去。

    二、解析文件数据。为了使主程序更清晰明了,在ExpressDao的构造方法里面读取文件并解析数据,先构造FileReader,再用FileReader构造BufferedReader,一次读取一行,再把得到的String按空格拆分,然后就可以构造Pakage对象,最后存到HashMap里面,数据就还原了。

    0817.jpg