当前位置:编程学习 > Delphi >>

delphi:copy

s1:=copy(s1,s2,1);//我想从s1中的第s2个数截取1个字符。可是那个s2好像不能这样写??怎么纠正
追问:

提问时用手机,没有全部打出来

var s1,s2 :string;

begin

s1:='1234567890';

s2:=edit1.text;

s1:=copy(s1,s2,1)

end;

 

我想在第s2个字符开始,但是

 

这样打在s2那里出问题了...

 

应该怎么纠正..

答案:

var s1,s2 :string;

a,b:integer;

begin

s1:='1234567890';

s2:=edit1.text;

    TryStrToInt(s2,a)<>True then
    begin
      Application.MessageBox('请输入整数。','提示',16);
      Exit;
    end;

b:=inttostr(s2);

s1:=copy(s1,b,1)//关键是,你把它转换为整型的不就行了吗?

end;

因为你的代码没有前面的定义说明,不知S2是什么类型,单纯从你的S1:=COPY(S1,S2,1);看,S1,s2应该是string,若这样,你的这句就错误了,应该是s2:=copy(s1,n,1);n是你想从第几位开始。

截取字符用AnsiMidStr

s1:= AnsiMidStr(s1,2,1) ;  从位置2开始截取1个字符  需要uses AnsiStrings

上一个:DELPHI处理数据库数据
下一个:delphi连接数据库

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,