怎么格式化这样的字符串? ( 积分: 100 )

  • 主题发起人 主题发起人 leichunmei
  • 开始时间 开始时间
L

leichunmei

Unregistered / Unconfirmed
GUEST, unregistred user!
有如下的字符串:
2458.554854
215.2
457668.582456585625
153.245
425.25
……
等这类的数字字符串,那么怎么把小数格式化成4位的?不存在四舍五入的需要。应该怎么做?结果要如下:
2458.5548
215.2000
457668.5824
153.2450
425.2500
……
 
format('%12.4f',[aValue])
 
不存在四舍五入的需要
这还不简单,没有现成的函数可调用,那就自己写个函数不就行了。
给你我的思路:
y:= function floattostr(x: double)string;
z:= pos(y,'.')(找字符串中小数点的位置)
tailStr:= copy(y,z+1,4);(取后四位)
str:= copy(y,1,z-1)+ '.'+ tailStr;
Result:= strToFloat(str);
这个Result就是你要的结果了
 
哦,忘记一项了,如果小数点后面少于四位的,你就自己加字符'0',然后
取转换就可以了;
哈哈,是不是蛮简单的;

一句话,没有现成的函数可调用,我们就自己来做吗,呵呵
 
这样的需求 同意lisongmagic的说法
 
多人接受答案了。
 

Similar threads

回复
0
查看
1K
不得闲
回复
0
查看
873
不得闲
回复
0
查看
881
不得闲
S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
后退
顶部