有一个这样的文本文件:
departmentId=dev//部门id
name1=jakie//姓名1
extraInfo1=salary:$6000//额外信息1
extraInfo2=experience:1year//额外信息2
........................
extraInfoN=//额外信息n
........................
nameN=mike//姓名N
subname1=salary:$11000
sunname2=experience:4years
......
......
......
departmentId=sales
name1=marry
subname1=salary:$5078
sunname2=experience:1year
name2=joice
subname1=salary:$7011
sunname2=experience:2years----------------------------------------------
真切的请问各位,因为可能需要通过  部门id 来查询该部门所有员工的信息, 怎么把这些信息读取出来并且存在数组或者像hashMap这样的Collection中呢,只有这点分了:(

解决方案 »

  1.   

    个人觉得可以把你的文本文件改成.properties文件
    可以直接用Property类直接读取
      

  2.   

    楼上的我也考虑过,不过楼主这个不是一个员工,好像Property解决不了吧,难道要一个员工一个.properties?
      

  3.   

    Map(部门ID,NameMap)
               ========
               Map(员工姓名,员工类)      
    用姓名做key的前提是姓名要唯一,否则要选用其它唯一性字段做可key, 否则就用ArrayList换掉NameMap
      

  4.   

    用properties只能取出一行一行的key,value对啊,怎么关联各行之间的关系呢,比如我要得到sales这个部分的所有信息,怎么做?
      

  5.   

    如果是xml的格式的话当然非常好读取,但是就是现在这样的格式,用BufferReader的方法怎么使读出来的数据能够具有相关性,比如我只要sales部门的所有员工信息,关键是读出来存到hashMap中不会啊,晕死!!
      

  6.   

    和我前段时间遇到的问题很像啊 ,不过我也不知道怎么在readline的同时存进集合类中,望高人指点!!
      

  7.   

    楼主,可否用xml存.
    用properties 好像有些问题,KEY值不唯一啊。(能加上 SECTION 也行,如windows的ini文件
    [Department1]
    ……
    [Department2]
    )上两种方式都不行的花还有如果真的只能用这个方式的话,可能需要逐行读取分析了,
    而且应该写一个 用户信息类 其中关键码,可以做为hashmap的KEY了然后如果要根据department 的ID号,来查有多少人,就只能查询VALUE的值了怎么感觉像是数据库了
      

  8.   

    楼主可以参考一下这篇文章:
    http://forum.java.sun.com/thread.jspa?threadID=334685&messageID=1368091
      

  9.   

    谢谢wiregate,我在sun的论坛找到了答案