为了精确度反映时间及时区,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 中的日期时间操作的更多相关文章

  1. JS 中的日期时间操作计算实例

    实例 一:已知日期格式为 "YYYY/MM/DD",计算相对于今天的天数差. function fromNow(date){ var mTimes = new Date(date) ...

  2. paip.日期时间操作以及时间戳uapi php java python 总结

    paip.日期时间操作以及时间戳uapi php java python 总结 ///uapi Date 函数 | Day 函数 | Hour 函数 | Minute 函数 | Month 函数 | ...

  3. Firebird日期时间操作

    最近在使用Firebird数据做 一项目,使用FireBird边用边学.(以下转贴) 查询2007年度以后的,12月份以上的数据记录,datetime为timestamp字段 select * fro ...

  4. Python基础 | 日期时间操作

    目录 获取时间 时间映射 格式转换 字符串转日期 日期转字符串 unixtime 时间计算 时间偏移 时间差 "日期时间数据"作为三大基础数据类型之一,在数据分析中会经常遇到. 本 ...

  5. Android中关于日期时间与时区的使用总结

    在开发Android的过程中,出现过几次由于日期时间导致的问题,而且主要是由于时区的原因导致,所以一直想总结一下,形成一个良好的开发规范.   一.Unix时间戳   Unix时间戳(Unix tim ...

  6. 在mysql数据库中关于日期时间字段的处理

    在mysql数据库中关于日期时间字段的处理 在开发中,日期时间字段一般有如下几种设计 假设要获取2013-08-15日到2013-08-16日之间的记录 1. 直接使用日期时间类字段 相关sql语句如 ...

  7. Golang中的各种时间操作

    Golang中的各种时间操作 需求 时间格式的转换比较麻烦,自己写了个工具,可以通过工具中的这些方法相互调用转成自己想要的格式,代码如下,后续有新的函数再添加 实现代码 package utils i ...

  8. Java日期时间操作基础——包含JDK1.8时间操作新特性

    JDK1.7日期时间操作 示例小结 public class DateTest { public static final String FORMAT_DATE = "yyyy-MM-dd& ...

  9. MySQL tips (日期时间操作/concat 等)

    1.  Query结尾要加一个分号: 2.  数据库和表 SHOW DATABASES;    USE YOUR_DB; SHOW TABLES; SHOW COLUMNS FROM study或者D ...

随机推荐

  1. 15种css居中方式

    1 水平居中 1.1 内联元素水平居中 利用 text-align: center 可以实现在块级元素内部的内联元素水平居中.此方法对内联元素(inline), 内联块(inline-block), ...

  2. 关于 No buffer space available (maximum connections reached?): connect 的处理

    一.问题: hudson一个应用打包部署一直不成功,检查报错 检查项目的JOB配置,开始以为是SVN的问题,但是重启SVN后问题一直存在 二.分析: TCP协议中,关闭TCP连接的是Server端(当 ...

  3. NumPy 矩阵库(Matrix)

    NumPy 矩阵库(Matrix) NumPy 中包含了一个矩阵库 numpy.matlib,该模块中的函数返回的是一个矩阵,而不是 ndarray 对象. 一个 的矩阵是一个由行(row)列(col ...

  4. 项目的发布(nginx、uwsgi、django、virtualenv、supervisor)

    导论 WSGI是Web服务器网关接口.它是一个规范,描述了Web服务器如何与Web应用程序通信,以及Web应用程序如何链接在一起以处理一个请求,(接收请求,处理请求,响应请求) 基于wsgi运行的框架 ...

  5. TOJ 2130: Permutation Recovery(思维+vector的使用)

    传送门:http://acm.tzc.edu.cn/acmhome/problemdetail.do?&method=showdetail&id=2130 时间限制(普通/Java): ...

  6. JS中DOM以及BOM

    一.bom对象 1screen对象 console.log(screen.width);// 屏幕宽度 console.log(screen.height);// 屏幕高度 console.log(s ...

  7. c# 记录内容到txt文件

    string a= content;//采样结果 if (!File.Exists("e:\\newfile\\newtxt.txt")) { new FileStream(&qu ...

  8. javascript简单的选项卡

    实现一个简单的选项卡功能 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...

  9. Python常用库大全,看看有没有你需要的

    作者:史豹链接:https://www.zhihu.com/question/20501628/answer/223340838来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

  10. 使用mybatis-generator-core工具自动生成mybatis实体

    我们可以使用mybatis-generator-core这个工具将数据库对象转换成mybatis对象,具体步骤如下. 1.mybatis-generator-core下载 下载地址:http://do ...