formatdatetime函数?float在线转换工具
大家好,感谢邀请,今天来为大家分享一下formatdatetime函数的问题,以及和float在线转换工具的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!
delphi的formatdatetime函数怎么用啊
delphi中formatdatetime是格式化日期时间的函数,返回值是格式化后的字符串。
function FormatDateTime(const Format string; DateTime TDateTime) string;
第一个参数是格式化字符串,第二个参数是要格式化的日期时间。
你的语句formatdatetime('yyyymmdd', datetimepicker1.Date+10/24)中,格式化
字符串是'yyyymmdd',就是将datetimepicker1.Date+10/24格式化成'yyyymmdd'
的格式,其中yyyy代表4位年,mm代表2位月,dd代表2为日,所以是不可能将10/24
的时间加上去的。如果要加上时间的话,格式化字符串可以写成'yyyymmdd hh:nn:ss'。
Format函数的用法
当然和Format一样还有一种,但这里只介绍常用的第一种
Format参数是一个格式化字符串。DateTime是时间类型。返回值是一种格式化后的
字符串
重点来看Format参数中的指令字符
c以短时间格式显示时间,即全部是数字的表示
FormatdateTime('c',now);
输出为:2004-8-7 9:55:40
d对应于时间中的日期,日期是一位则显示一位,两位则显示两位
FormatdateTime('d',now);
输出可能为1~31
dd和d的意义一样,但它始终是以两位来显示的
FormatdateTime('dd',now);
输出可能为01~31
ddd显示的是星期几
FormatdateTime('ddd',now);
输出为:星期六
dddd和ddd显示的是一样的。
但上面两个如果在其他国家可能不一样。
ddddd以短时间格式显示年月日
FormatdateTime('ddddd',now);
输出为:2004-8-7
dddddd以长时间格式显示年月日
FormatdateTime('dddddd',now);
输出为:2004年8月7日
e/ee/eee/eeee以相应的位数显示年
FormatdateTime('ee',now);
输出为:04(表示04年)
m/mm/mmm/mmmm表示月
FormatdateTime('m',now);
输出为:8
FormatdateTime('mm',now);
输出为 08
FormatdateTime('mmm',now);
输出为八月
FormatdateTime('mmmm',now);
输出为八月
和ddd/dddd一样,在其他国家可能不同
yy/yyyy表示年
FormatdateTime('yy',now);
输出为 04
FormatdateTime('yyyy',now);
输出为 2004
大概如此,如果要在Format中加普通的字符串,可以用双引号隔开那些
特定义的字符,这样普通字符串中如果含特殊的字符就不会被显示为
时间格式啦:
FormatdateTime('today is c',now);
输出为:today is 2004-8-7 10:26:58
时间中也可以加-或来分开日期:
FormatdateTime('today is yy-mm-dd',now);
FormatdateTime('today is yymmdd',now);
输出为: today is 04-08-07
也可以用:来分开时间
FormatdateTime('today is hh:mm:ss',now);
输出为:today is 10:32:23常用的声明:
function FormatFloat(const Format: string; Value: Extended): string; overload;
和上面一样Format参数为格式化指令字符,Value为Extended类型
为什么是这个类型,因为它是所有浮点值中表示范围最大的,如果传入该方法的参数
比如Double或者其他,则可以保存不会超出范围。
关键是看Format参数的用法
0这个指定相应的位数的指令。
比如:FormatFloat('000.000',22.22);
输出的就是022.220
注意一点,如果整数部分的0的个数小于Value参数中整数的位数,则没有效果
如:FormatFloat('0.00',22.22);
输出的是:22.22
但如果小数部分的0小于Value中小数的倍数,则会截去相应的小数和位数
如:FormatFloat('0.0',22.22);
输出的是:22.2
也可以在整数0中指定逗号,这个整数位数必须大于3个,才会有逗号出句
FormatFloat('0,000.0',2222.22);
输出是:2,222.2
如果这样FormatFloat('000,0.0',2222.22);
它的输出还是:2,222.2
注意它的规律
#和0的用法一样,目前我还没有测出有什么不同。
FormatFloat('##.##',22.22);
输出是:22.00
E科学表示法,看几个例子大概就明白了
FormatFloat('0.00E+00',2222.22);
format函数用法
format函数的用法如下:
1、FormatdateTime('c',now);输出为:2004-8-7 9:55:40d对应于时间中的日期,日期是一位则显示一位,两位则显示两位。
2、FormatdateTime('d',now);输出可能为1~31,dd和d的意义一样,但它始终是以两位来显示的。
3、FormatdateTime('dd',now);输出可能为01~31,ddd显示的是星期几。
4、FormatdateTime('ddd',now);输出为:星期六,dddd和ddd显示的是一样的。但上面两个如果在其他国家可能不一样。ddddd以短时间格式显示年月日。
5、FormatdateTime('ddddd',now);输出为:2004-8-7,dddddd以长时间格式显示年月日。
6、FormatdateTime('dddddd',now);输出为:2004年8月7日,e/ee/eee/eeee以相应的位数显示年。
7、FormatdateTime('ee',now);输出为:04(表示2004年),m/mm/mmm/mmmm表示月。
8、FormatdateTime('m',now);输出为:8。
函数示例:
本示例显示用Format函数做格式化输出的不同用法。对于日期分隔号(/),时间分隔号(:),以及AM/PM等文本而言,其真正地显示格式会因计算机上的国际标准不同而有所差异。在开发阶段,日期与时间是以短日期的格式,配合代码的国际标准来显示的。
而在运行时,短日期则是根据系统的国际标准而定,而系统的国际标准和代码的国际标准可能并不相同。本示例中是假设国际标准为English/United States。
OK,关于formatdatetime函数和float在线转换工具的内容到此结束了,希望对大家有所帮助。