delphi里面奇奇怪怪的函数真多。。
来源:互联网 发布:js setgcparameter 编辑:程序博客网 时间:2024/04/28 22:10
这两天作东西的时候碰到一个问题,要分析一长串用逗号分割的字符串,于是我是这么写的
TFindRec = record
Sourcedata: string;
Sign: integer;
Data: string;
end;
function FindFirstData(AString: String;
var F: TFindRec): Boolean;
var
I:Integer;
begin
F.sourcedata := AString;
F.sign :=0;
I := 1;
repeat
inc(I);
until (AString[i] = ',') or (i = Length(AString));
if AString[i] = ',' then
F.data :=Copy(AString, F.sign+1, I-F.sign-1)
else
F.data :=Copy(AString, F.sign+1, I-F.sign);
F.sign:=I;
result := true;
end;
function FindNextData(var F: TFindRec): Boolean;
var
I: Integer;
begin
if F.sign = Length(F.sourcedata) then
begin
F.Data := '';
result := false;
exit;
end;
I:=F.sign;
repeat
Inc(I);
until (F.sourcedata[i] = ',') or (I = Length(F.sourcedata));
if f.sourcedata[i] = ',' then
F.data := Copy(F.sourcedata, F.sign +1, I-F.sign-1)
else
F.data := Copy(F.sourcedata, F.sign+1, I-F.sign);
F.sign := I;
result := true;
end;
用的时候先用FindFirstData,然后就可以一直repeat使用FindNextData
思路是来自于FindFirst,FindNext系列函数,所以特意写了2个函数,而不是一个,这样虽然多写了几句
但是字符串只要遍历一遍就可以了~
没想到BOSS过来看了以后,说,完全不需要这么麻烦啊,然后叫我用TStringList的commaText函数,效果一样
试了试,果然。。。Use CommaText to get or set all the strings in the TStrings object in a single comma-delimited string.,这是Help里面写的。。。
汗一个啊。。Delphi的奇奇怪怪的函数真多。。或者说我的经验真的还很不够啊。。(BOSS果然强。。)
- delphi里面奇奇怪怪的函数真多。。
- VS奇奇怪怪的函数unsafe~
- 一些奇奇怪怪的东西
- 奇奇怪怪的树形dp
- 那些奇奇怪怪的语句
- 【数论】奇奇怪怪的结论
- 奇奇怪怪的东西们
- Delphi真的不行了?
- 一个奇奇怪怪的js问题
- 一个奇奇怪怪的数学问题
- delphi真的沉沦了
- xaml的一些奇奇怪怪的错误
- svn报的奇奇怪怪的错
- ios ZBar扫二维码奇奇怪怪的错误
- 各种奇奇怪怪的日期格式转换
- 奇奇怪怪的字符串循环同构问题
- 关于WebView和NestedScrollView奇奇怪怪的问题
- 关于WebView和NestedScrollView奇奇怪怪的问题
- 社区 Java .net 的一个对比数据
- Jbuilder 启动失败,找原因
- 可视元件拖动
- Visual Basic的UnLoad form问题
- c#操作word(二)
- delphi里面奇奇怪怪的函数真多。。
- 发现自己真是打杂的
- fw:关于门户网站设计
- Spring+Hibernate+Struts技术的一个分页程序,共享给大家
- 权 限 体 系 任 务 描 述
- 2005.09.26
- 文言杂记
- 漫谈软件测试工程师与mercury认证
- 完全用Linux工作,摈弃Windows - by 王垠