各位大虾,小弟想用TStrings存储一些数据,想问一下用TStrings最多能存储多少个元素啊,比如:
S: TStrings;
i: integer;S:=TStringList.Create;
for i:=0 to ?(这里最大值能设多少)do
 S.Add(inttostr(i));谢谢!!!

解决方案 »

  1.   

    理论上它只受你的物理内存和虚拟内存的限制,但实际上如果存入太多行数据效率会明显降低,因为它需要维护整个List里面所有的数据,而且并没有提供类似数据库中的数据缓冲机制。在实践中,如果要处理大批量的数据,往往都是分批次处理的。
    如果你需要处理的只是几百条数据,或者再多些有一两千条,那么还可以用TStringList来直接处理,要是再话还是老老实实用数据库吧。
      

  2.   

    非常感谢楼上大虾的回复,小弟试了一下,i可以设到百万,但程序执行有些慢。小弟主要是想将文件里的数据读到TStrings内,而不是每次都要去读文件。