超长字符串的处理???(100分)

  • 主题发起人 主题发起人 Fucool
  • 开始时间 开始时间
F

Fucool

Unregistered / Unconfirmed
GUEST, unregistred user!
以下超长字符串
0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,
我需要用一个寒数对它进行取值,
但每次最多只能装入255个,有什么办法可以装入更多。

 
astring:='';
for i:=0 to 111 do
astring:=astring+inttostr(i)+',';
 
widestring;
 
用floatstr
 
用数组吧
 
如果此字符串是常数,须拆分几段或直接符给一字符串变量
var
fList: TStringList;
s: string;
begin
s := '0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20';
fList := TStringList.Create;
try
fList.CommaText := s;
ShowMessage(fList[0]);
ShowMessage(fList[1]);
.....
finally
fList.Free;
end;
end;
 
ansistring;
 
用链来实现,比数组爽,没有限制。
 
谢谢大家了
天与地的方法无疑是最好的,但代码量是最大的
但有没有更好的方法呢??
 
我查到以前的一个内容
zhhc (2001-3-15 17:43:00)
在字符串定义的时候用AnsiString即可是字符串长度最大到4G
以上如何做的???

另外如果你是用的TQuery控件,它里面的SQL语句是TStrings类型的,可以用Add添加条件,
条件个数应该只和你的机器的内存有关

 
多人接受答案了。
 
后退
顶部