日期_变换等_一些测试

Posted CodeSkill

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了日期_变换等_一些测试相关的知识,希望对你有一定的参考价值。

1、StrToDateTime 的缺陷:

  有的系统 日期格式是这样"2016-08-21",有的又是"2016/08/21",于是 不能使用 StrToDateTime(‘2016-08-21‘)这样写死的方式,于是找了一个方式

 

2、需要 "use DateUtils"

  ZC: 思路:将dt160821清空,就是 1899年12月30日 00时00分00秒000毫秒,然后在这个时间基础上 加上相应的年份/月份/天数,即可得到 目标日期。

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DateUtils;

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var dt160821, dt01 :TDatetime;
begin
  //dt160821 := StrToDate(‘2016-08-21‘);
  //dt160821 := now;
  //IncMonth(

  ZeroMemory(@dt160821, sizeof(dt160821));
  Memo1.Lines.Add(datetimetostr(dt160821));  //1899/12/30

  dt01 := IncMonth(dt160821, 1404);
  Memo1.Lines.Add(datetimetostr(dt01));

  // 1899/12/30~2016/12/30 ==> 117年 ==> 1404个月
  // 1899/12/30~2016/07/30 ==> 1499 个月
  dt01 := IncMonth(dt160821, 1399);
  Memo1.Lines.Add(datetimetostr(dt01));

  dt01 := IncDay(dt01, 22); // 2016/07/30 加上 22天 就是 2016/08/21
  Memo1.Lines.Add(datetimetostr(dt01));
end;

procedure TForm1.Button2Click(Sender: TObject);
var dt160821 :TDatetime;
begin
  ZeroMemory(@dt160821, sizeof(dt160821));
  dt160821 := IncMonth(dt160821, 1399);
  dt160821 := IncDay(dt160821, 22);
  Memo1.Lines.Add(datetimetostr(dt160821));
end;

end.

3、

4、

5、

 

以上是关于日期_变换等_一些测试的主要内容,如果未能解决你的问题,请参考以下文章

JMeter:逻辑控制器_模块控制器(Module Controller)

VSCode 配置 用户自定义代码片段 自定义自动代码补充

imgwarp.cpp:3143: error: (-215:Assertion failed) _src.total() > 0 in function ‘warpPerspective‘(代码片段

常用python日期日志获取内容循环的代码片段

C标准中一些预定义的宏,如__FILE__,__func__等

java_日期格式转换(实例测试)