各位帮帮忙?一个难题

eddycjh 2005-06-19 01:22:35
大家知道怎么做吗?
我的数据库有一个字段是这样的
1:如果字段的值是123456,789的话就要把
123456,789写到EDIT1中去
2:如果字段的值是123456,789,456,的话就要把
123456,789写到EDIT1中去.456写到EDIT2中去
3:如果字段的值是123456,789,456,123,461的话就要把
123456,789写到EDIT1中去.456,123写到EDIT2中去,
461写到EDIT3中去
除了用CASE语句还能怎么做
我写了一下很长的代码!我先要去判断有几个逗号在判断如果是1个就写到EDIT1.这样来写很长的代码的啊

...全文
104 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
andrew223 2005-06-20
  • 打赏
  • 举报
回复
UP
Comer 2005-06-20
  • 打赏
  • 举报
回复
没看明白楼主的问题,怎么判断小数点的位置呢?是不是楼主把描述中的小数点给换成逗号了?
lencon 2005-06-20
  • 打赏
  • 举报
回复
应该不难,但不想回答了
eddycjh 2005-06-20
  • 打赏
  • 举报
回复
flyany2000(flyany2000) 你的好象不可以哦!aiirii(ari-淘金坑) 这个楼主的建议不错但是还是有很长的代码!我还要分开看是0还是1.当是0就写123456.如果是1的话123456,789
aiirii 2005-06-19
  • 打赏
  • 举报
回复
var sL: TStringList;
I: Integer;
begin
sL := TStringList.Create;
sL.Delimiter := ',';
sL.DelimitedText := edit4.Text;
for I:= 0 to sL.count-1 do
begin
case i of
0: edit1.Text := sL.Strings[0];
1: edit1.Text := sL.Strings[0] + ',' + sL.Strings[1];
2: edit2.Text := sL.Strings[2];
3: edit2.Text := sL.Strings[2] + ',' + sL.Strings[3];
4: edit3.Text := Sl.Strings[4];
end;
end;
sl.Free;
end;
xthmpro_cn 2005-06-19
  • 打赏
  • 举报
回复
你就是要从第二个逗号处分开,如果用的是Delhi7可以试试PosEx,
如果第二个逗号前是等长的字符,可以直接取等长字符。
flyany2000 2005-06-19
  • 打赏
  • 举报
回复
function FillEdit(YouNumStr:stirng):Integer;
var
OutStringList:TStringList;
ListCount:Integer;
begin
ExtractStrings([','],[' '],PChar(YouNumStr),OutStringList);
case OutStringList.Count of
1,2: Edit1.Text:=ListToStr(OutStringList);
3,4: Edit1.Text:=ListToStr(OutStringList);
5,6: Edit1.Text:=ListToStr(OutStringList);
end;
end;
function ListToStr(AList:TStringList):String;
var
i:Integer;
begin
Result:=AList.Strings[0];
for i:=1 to AList.Count-1 do
Result:=Result+','+AList.Strings[i];
end;

以上我没在Delphi中写,不过大体应该对的

2,496

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧