4个回答
展开全部
随手写的一段,只是简单的判断一下,没有考虑数据类型的界限,可参考:
procedure TForm1.Button1Click(Sender: TObject);
var
i,j : Integer;
s : string;
c : Char;
begin
if Edit1.Text <> '' then
begin
j := 0;
s := Edit1.Text;
for i := 1 to Length(s) do
begin
c := s[i];
if not (c in ['0'..'9','.']) then
begin
ShowMessage('不是Float或integer类型');
Exit;
end
else
begin
if c = '.' then
Inc(j);
if j > 1 then
begin
ShowMessage('不是Float或integer类型');
Exit
end;
end;
end;
ShowMessage('是Float或integer类型');
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i,j : Integer;
s : string;
c : Char;
begin
if Edit1.Text <> '' then
begin
j := 0;
s := Edit1.Text;
for i := 1 to Length(s) do
begin
c := s[i];
if not (c in ['0'..'9','.']) then
begin
ShowMessage('不是Float或integer类型');
Exit;
end
else
begin
if c = '.' then
Inc(j);
if j > 1 then
begin
ShowMessage('不是Float或integer类型');
Exit
end;
end;
end;
ShowMessage('是Float或integer类型');
end;
end;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用TryStrToFloat或TryStrToint函数就可以判断字符串是否可以转换成float或integer
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
判断中间是否有不是0—9的字符就可以
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var
n : Integer;
f : Double;
......
if TryStrToInt( AString, n ) then ...... // 是整数,且存入了n
if TryStrToFloat( AString, f ) then ......// 是Float,且存入了f
n : Integer;
f : Double;
......
if TryStrToInt( AString, n ) then ...... // 是整数,且存入了n
if TryStrToFloat( AString, f ) then ......// 是Float,且存入了f
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询