蚂
蚂蚁根
Unregistered / Unconfirmed
GUEST, unregistred user!
我在做将s:=string;按‘空格’分割提取字符串,将一个字符串分割成多个子字符串,并存入strarr:=array[1..8] of string;中,编译正常,
结果出现错误,错误如下:
s字符串={(228.0 222.0 229.0 000 54.3 2.23 19.0 00100011 }
分割后出现的错误strarr[1]:=228.0
strarr[2]:=222.0
strarr[3]:=229.0
strarr[4]:=000
strarr[5]:=54.3
strarr[6]:=2.23
strarr[7]:=''
strarr[8]:=''////后面两个数据为空???为什么????
代码如下,请高手详细指点,急,在线等!!!!!!
if (pos('(',s)<>0) then//先去掉括号
begin
j:= 1;
sp1 := pos('(',s);
s :=' '+ copy(s,sp1+1,length(s)-sp1)+' ';
repeat //按空格分割
S1:='';
sp1:=pos(' ',s);
s:=copy(s,sp1+1,length(s)-sp1);
SP1:=0;
for i:=1 to length(s) do
begin
if copy(s,i,1)<>' ' then
begin
s:=copy(s,i,length(s)-i);
break;
end
ELSE showmessage('error');
end;
sp1:=pos(' ',s);
s3:= s3+inttostr(sp1)+'#';
s1:= copy(s,1,sp1-1);
s := copy(s,sp1,length(s)-sp1);
s2 :=s2+s1+'#';
strarr[j] := s1;
inc(j);
until length(s)=16;
showmessage(S3);
edit1.text := strarr[1]+'V';
edit4.text := strarr[3];
edit7.text := strarr[5];
edit13.text := strarr[4];
edit16.text := strarr[7];//+' '+Floattostr(9/5*strtofloat(strarr[7])+32)+'F';
END;
end;
结果出现错误,错误如下:
s字符串={(228.0 222.0 229.0 000 54.3 2.23 19.0 00100011 }
分割后出现的错误strarr[1]:=228.0
strarr[2]:=222.0
strarr[3]:=229.0
strarr[4]:=000
strarr[5]:=54.3
strarr[6]:=2.23
strarr[7]:=''
strarr[8]:=''////后面两个数据为空???为什么????
代码如下,请高手详细指点,急,在线等!!!!!!
if (pos('(',s)<>0) then//先去掉括号
begin
j:= 1;
sp1 := pos('(',s);
s :=' '+ copy(s,sp1+1,length(s)-sp1)+' ';
repeat //按空格分割
S1:='';
sp1:=pos(' ',s);
s:=copy(s,sp1+1,length(s)-sp1);
SP1:=0;
for i:=1 to length(s) do
begin
if copy(s,i,1)<>' ' then
begin
s:=copy(s,i,length(s)-i);
break;
end
ELSE showmessage('error');
end;
sp1:=pos(' ',s);
s3:= s3+inttostr(sp1)+'#';
s1:= copy(s,1,sp1-1);
s := copy(s,sp1,length(s)-sp1);
s2 :=s2+s1+'#';
strarr[j] := s1;
inc(j);
until length(s)=16;
showmessage(S3);
edit1.text := strarr[1]+'V';
edit4.text := strarr[3];
edit7.text := strarr[5];
edit13.text := strarr[4];
edit16.text := strarr[7];//+' '+Floattostr(9/5*strtofloat(strarr[7])+32)+'F';
END;
end;