有一组数据,例如:
1121212    dddd  20090212  5:12    xxxxxxxxx
           xxxx  20090212  5:13    3123131231
           ......
1121323    wwww  20090212  5:12    xxxxxxxxx
           2232  20090212  5:13    3123131231
           ......
......
......
存到一个数据结构里面,这些数据类似于qq的聊天记录,存入数据结构后,可以根据序列号读出相应的数据,
例如:要读取1121212时,读出相应的数据为
dddd  20090212  5:12    xxxxxxxxx
xxxx  20090212  5:13    3123131231
......
大家没有什么好的办法!有源码最好,也可以讨论!
        
 

解决方案 »

  1.   

    对应保存就是了,然后根据id来查找,id保存如1121212
      

  2.   

    就是保存到表中的啊,然后根据ID查找,查找出来绑定固定的模式啊,就像CSDN里这样,读出来绑定到模板。
      

  3.   

    哈希表 
    key:
    1121212    
    value:
    dddd  20090212  5:12    xxxxxxxxx 或者读写INI文件。
      

  4.   

    不要学QQ,腾讯很垃圾的,以前使用文件来存放图片和表情的时候还挺快的,现在改用了db数据库文件来存放,开玩笑了,慢的无法忍受了。我发个图之前肯定会卡住10秒钟之久。而聊天信息也是,打开聊天窗口会查询聊天信息,他那个文件数据库检索实在是慢的可以了。至于qq的聊天记录的效果,是他从数据库文件中查找数据后,那样显示的,不是以那种格式存放的,你明白不?我甚至怀疑他的数据库文件是不是序列化的数据流,要加载到内存才可以完成检索。那点数据用数据库引擎来检索瞬间就可以完成的,它却经常慢的程序假死状态。别怀疑我的机器,双核2G内存的机器不差了。
      

  5.   

    4楼的hashtable不行,因为聊天记录是会更新的,这样你的Key会重复;而要通过key来更新value却比较麻烦
    建议直接存到文件或数据库中
    例如存到文件中,可以一个ID新建一个文件,将记录存入文件中,每条记录后面加个结束标志 ,这样存储和读取都比较方便 QQ便与此类似
    存入数据库比较简单,不要介绍了吧
      

  6.   

    如果是存在本地的话,可以考虑XML。
    如果是存入数据库,那么直接按照楼上各位的建议,建立一个表,主键设置为序列号就好了。
      

  7.   

    用xml或者定一个Struct都可以满足啊
      

  8.   

    xml的方法我也想过了,但是我不想将数据存到本地!还有没有什么好的办法!
      

  9.   


    你是问的这个啊,早说啊,开始没明白你的意思,还以为你想模仿QQ的方法呢。很简单的做法,自己定义一个DataTable存放,DataTable可以很方便的实现数据的增删改,同时查找对应项的数据也有很好的方法。
    这个帖子的4楼我已经给过DataTable增删改的方法:http://topic.csdn.net/u/20090614/09/c3b48b21-f054-489f-95a5-ee1c7ecef886.html。
    当然你网上应该还可以找到很多例子。
      

  10.   


    除了数据库和文件,难道还有其他方法吗?你所说的数据结构是什么呢?QQ的聊天记录也是存入一个文件里的。其实就算XML也是一个文件。不过我觉得XML是比较好的方法了。
      

  11.   

    靠,数据库中,如果嫌安装麻烦,找免安装的像sqllite只要数据库文件和的类库就行了
      

  12.   

    你可以学习msn利用xml保存到本地。