入门级问题 虽然我最后解决了,可还是觉得我的方法太笨. 关于 Strutils.PAS的使用(5分)

  • 主题发起人 主题发起人 Delphi衰哥
  • 开始时间 开始时间
D

Delphi衰哥

Unregistered / Unconfirmed
GUEST, unregistred user!
我写一段程序,需要对字符串进行处理,查了半天,找到这个"Delphi6函数大全-StrUtils.pas",这里面介绍了几个函数.
可是,当我用这些函数的时候,无法编译,说函数没有事先定义.
把这个strutils加到uses里,无法找到这个文件.
我回到DOS找到这个文件,在E:/Program files/Borland/Delphi7/Source/Rtl/Common 目录里.鉴于软件能找到的其他文件如 sysutils.pas, system.pas 在 E:/Program files/Borland/Delphi7/Source/Rtl/Sys下,所以把strutils.pas复制到 sys里,结果执行正常.

这个方法似乎笨了点吧??
下面这个程序把小数后面的零去掉.估计delphi已经提供这样的函数,而我没有这方面的资料,只好自己写了一个函数.

function str1(n1:real; dec:integer):string;
{Convert a number to a string}
var s1:string;
begin
str(n1:5:dec,s1);
while ansiendstext('0',s1)=true do
s1:=leftstr(s1,length(s1)-1);
if ansiendstext('.',s1)=true then
s1:=leftstr(s1,length(s1)-1);
str1:=s1;
end;

 
不用自己写函数,Delphi有现成的
FormatFloat
 
我试验了一下您说的这个函数,似乎不是我需要的,他只能限制小数位的输出,
edit2.text:=formatfloat('0000.000',123.12345);
结果是 0123.123
 
我明白了,原来用#.##来表示小数位
 
后退
顶部