kbmmw 中的日期时间操作
为了精确度反映时间及时区,kbmmw 里面专门有一个单元处理日期时间,由于很多同学习惯了delphi
自带的Tdatetime,使用这个时会有一些疑惑,因此今天就单独说一下这个。
首先kbmmwdatetime 里面使用UTC 时间作为基本计时标准,然后可以转换为其他时区。
Tkbmmwdatetime.Create(now);
这个其实并不是返回我们当前的时区时间。
如果要返回当前时区的时间,有两个方法,
一种是通过ISO8601 标准格式赋值得到,
Tkbmmwdatetime.Create('2018-04-30T13:02:15.417+08:00');
另外一种是通过kbmmw提供的类函数得到
Tkbmmwdatetime.Create( Tkbmmwdatetime.Now) ;
现在通过以下代码说明。
procedure TForm1.Button1Click(Sender: TObject);
var
t1:Tkbmmwdatetime; t2:Tkbmmwdatetime; begin
t1:=Tkbmmwdatetime.Create('2018-04-30T15:27:15.417+08:00'); memo1.Lines.Add('IOS8601:'+t1.GetISO8601dateTime) ; memo1.Lines.Add('fixedlocal:'+t1.GetFixedLocalDateTime) ; memo1.Lines.Add('fixedUTC:'+t1.GetFixedUTCDateTime) ; memo1.Lines.Add('TimeZone:'+t1.GetTimeZone ) ; memo1.Lines.Add('========================='); t2:=Tkbmmwdatetime.Create( Tkbmmwdatetime.Now) ;
memo1.Lines.Add('iso8601:'+t2.GetISO8601dateTime) ; memo1.Lines.Add('fixedlocal:'+t2.GetFixedLocalDateTime) ; memo1.Lines.Add('fixedUTC:'+t2.GetFixedUTCDateTime) ; memo1.Lines.Add('TimeZone:'+t2.GetTimeZone ) ; memo1.Lines.Add('RFC123UTC:'+t2.GetRFC1123UTCDateTime ) ; memo1.Lines.Add('RFC123:'+t2.GetRFC1123DateTime) ; memo1.Lines.Add('NCSA'+ t2.GetNCSADateTime ) ; memo1.Lines.Add('dayofweek:'+ kbmMWRFC1123DayNames[t2.DayOfWeek()]) ; end;
运行结果

kbmmw 中的日期时间操作的更多相关文章
- JS 中的日期时间操作计算实例
实例 一:已知日期格式为 "YYYY/MM/DD",计算相对于今天的天数差. function fromNow(date){ var mTimes = new Date(date) ...
- paip.日期时间操作以及时间戳uapi php java python 总结
paip.日期时间操作以及时间戳uapi php java python 总结 ///uapi Date 函数 | Day 函数 | Hour 函数 | Minute 函数 | Month 函数 | ...
- Firebird日期时间操作
最近在使用Firebird数据做 一项目,使用FireBird边用边学.(以下转贴) 查询2007年度以后的,12月份以上的数据记录,datetime为timestamp字段 select * fro ...
- Python基础 | 日期时间操作
目录 获取时间 时间映射 格式转换 字符串转日期 日期转字符串 unixtime 时间计算 时间偏移 时间差 "日期时间数据"作为三大基础数据类型之一,在数据分析中会经常遇到. 本 ...
- Android中关于日期时间与时区的使用总结
在开发Android的过程中,出现过几次由于日期时间导致的问题,而且主要是由于时区的原因导致,所以一直想总结一下,形成一个良好的开发规范. 一.Unix时间戳 Unix时间戳(Unix tim ...
- 在mysql数据库中关于日期时间字段的处理
在mysql数据库中关于日期时间字段的处理 在开发中,日期时间字段一般有如下几种设计 假设要获取2013-08-15日到2013-08-16日之间的记录 1. 直接使用日期时间类字段 相关sql语句如 ...
- Golang中的各种时间操作
Golang中的各种时间操作 需求 时间格式的转换比较麻烦,自己写了个工具,可以通过工具中的这些方法相互调用转成自己想要的格式,代码如下,后续有新的函数再添加 实现代码 package utils i ...
- Java日期时间操作基础——包含JDK1.8时间操作新特性
JDK1.7日期时间操作 示例小结 public class DateTest { public static final String FORMAT_DATE = "yyyy-MM-dd& ...
- MySQL tips (日期时间操作/concat 等)
1. Query结尾要加一个分号: 2. 数据库和表 SHOW DATABASES; USE YOUR_DB; SHOW TABLES; SHOW COLUMNS FROM study或者D ...
随机推荐
- pta7-7旅游规划(dijkstra算法)
题目链接:https://pintia.cn/problem-sets/1101307589335527424/problems/1101314114762387456 题意:给n给城市,m条公路,公 ...
- c++面向行的输入getline()和get()
来源:c++ primer plus 在c++里当我们输入一个字符串时习惯用cin,但是cin只能读取一段不含空格的字符串,如果我们需要读取一段包含空格的字符串时,就需要用到getline()或get ...
- 学习Junit资料
以下是找到的一些有用的学习资料,先收藏了 http://www.blogjava.net/jiangshachina/archive/2011/12/14/366289.html http://www ...
- Django的model操作中一些常用的小点
一.django的orm的13种基本的查询方法 1.all方法,查询某张表中的所有的数据 user_obj_list = models.Person.objects.all() 返回的结果是query ...
- C#字符串长度判断
string aaa = "你好123"; Label1.Text = aaa.Length.ToString(); //结果5 Label2.Text = System.Tex ...
- SQL Server 2008 R2如何生成带数据的数据库脚本
1.对想要复制的数据库右键,“任务”,“生成脚本” 2.下面需要注意的是,默认情况下,只会生成仅架构的脚本,也就是说仅仅有表结构,而没有数据的空壳.所以需要额外的设置. 在设置脚本编写选项,选择“高级 ...
- PHP系统编程--PHP进程信号处理(转)
原地址:https://www.cnblogs.com/linzhenjie/p/5485436.html PHP的pcntl扩展提供了信号处理的功能,利用它可以让PHP来接管信号的处理,在开发服务器 ...
- 创建smartfroms页格式
1.输入TCODE:spad 2.页格式:完全管理 ---> 设备类型 ---> 页格式 ---> 创建 3.比如:长:24.2cm 宽:11.5cm 则设置:纸宽:115MM 纸 ...
- YII2中分页组件的使用
当数据过多,无法一页显示时,我们经常会用到分页组件,YII2中已经帮我们封装好了分页组件. 首先我们创建操作数据表的AR模型: <?php namespace app\models; use y ...
- Win10以管理员身份启动cmd.exe
PowerShell -windowstyle hidden -Command "Start-Process cmd.exe -ArgumentList '/s,/k, pushd' -Ve ...