DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: wjy13061029975
今日帖子: 0
在线用户: 10
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 beginer (初学者) ★☆☆☆☆ -
盒子活跃会员
2003/4/18 13:25:25
标题:
这个问题怎么一直没人接招?? 浏览:3608
加入我的收藏
楼主:  formatfloat(',.00',StrToFloat('123456')可将123456的格式设为123,456.00(财务上用的)

请问如何逆向转化呢? 将123,456.00的格式设为123456.00

----------------------------------------------
新手,想得到您的帮助!
作者:
男 cjrb (Thinking In 魂) ★☆☆☆☆ -
盒子活跃会员
2003/4/18 13:42:47
1楼: 首部 function FloatToStrF(Value: Extended; Format: TFloatFormat; Precision, Digits: Integer): string; $[SysUtils.pas
功能 返回浮点数以指定格式转换成字符串
说明 Precision指定精度;Digits指定小数宽度
参考 function SysUtils.FloatToText
例子
///////Begin FloatToStrF
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.Values['ffGeneral'] := FloatToStrF(StrToFloatDef(Edit1.Text, 0),
ffGeneral, SpinEdit1.Value, SpinEdit2.Value);
Memo1.Lines.Values['ffExponent'] := FloatToStrF(StrToFloatDef(Edit1.Text, 0),
ffExponent, SpinEdit1.Value, SpinEdit2.Value);
Memo1.Lines.Values['ffFixed'] := FloatToStrF(StrToFloatDef(Edit1.Text, 0),
ffFixed, SpinEdit1.Value, SpinEdit2.Value);
Memo1.Lines.Values['ffNumber'] := FloatToStrF(StrToFloatDef(Edit1.Text, 0),
ffNumber, SpinEdit1.Value, SpinEdit2.Value);
Memo1.Lines.Values['ffCurrency'] := FloatToStrF(StrToFloatDef(Edit1.Text, 0),
ffCurrency, SpinEdit1.Value, SpinEdit2.Value);
end;
///////End FloatToStrF
----------------------------------------------
按此在新窗口浏览图片 充电..........
作者:
男 beginer (初学者) ★☆☆☆☆ -
盒子活跃会员
2003/4/18 13:59:38
2楼: 这么复杂,很难懂啊,能不能写简单点,举个例子?!
----------------------------------------------
新手,想得到您的帮助!
作者:
男 cjrb (Thinking In 魂) ★☆☆☆☆ -
盒子活跃会员
2003/4/18 14:39:28
3楼: 你说的
将123,456.00的格式设为123456.00
前面是什么类型,后面呢
----------------------------------------------
按此在新窗口浏览图片 充电..........
作者:
男 llf026 (llf026) ★☆☆☆☆ -
盒子活跃会员
2003/4/18 14:51:53
4楼:
var
  s: string;
begin
  edit1.text := format('%n', [123456.0]);
  s := edit1.text;
  while pos(',', s) > 0 do
    delete(s, pos(',', s), 1);
  edit2.Text := floattostr(strtofloat(s));
end;

----------------------------------------------
-
作者:
男 tzzqn (教授) ★☆☆☆☆ -
盒子活跃会员
2003/4/18 15:49:27
5楼: 我来接,用formatfloat('.00',StrToFloat('123456')即可



----------------------------------------------
~我很菜,但我很努力!~
作者:
男 tzzqn (教授) ★☆☆☆☆ -
盒子活跃会员
2003/4/22 18:53:22
7楼: 很简单,那把5楼的括号中的“123456”改成“123,456.00”不就成了吗!!!!
----------------------------------------------
~我很菜,但我很努力!~
作者:
男 ningzuoyun (ningzuoyun) ★☆☆☆☆ -
普通会员
2003/4/22 20:22:29
8楼: 兄弟,这个函数可以帮你解决问题,而且很简单,你可以适当的加以修改

function Str_SByte(var XStr:string): string;  //当然可以设计来源数据是float的

begin

  while Pos(',', XStr) > 0 do
  begin
    Delete(XStr, Pos(',', XStr), 1);
  end;
  str_sbyte:= xstr;
end;

----------------------------------------------
-
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行72.00241毫秒 RSS