delphi 批量日期格式化


本文整理自网络,侵删。

 


var
  i: integer;
  vLine, vStr, vPart: string;
  vYear, vMonth, vDay: Word;
  vArr: TArray<string>;
  vDate: TDateTime;
begin
  Memo2.Clear;
  for i := 0 to Memo1.Lines.Count - 1 do
  begin
    vLine := Memo1.Lines[i];
    vStr := StringReplace(vLine, '.', '-', [rfReplaceAll]);
    vArr := vStr.Split(['-']);
    case Length(vArr) of
      2:
        begin
          vYear := StrToIntDef(vArr[0], 2020);
          vMonth := StrToIntDef(vArr[1], 1);
          vDay := 1;
          if not TryEncodeDateTime(vYear, vMonth, vDay, 0, 0, 0, 0, vDate) then
            vDate := now;
        end;
      3:
        begin
          vYear := StrToIntDef(vArr[0], 2020);
          vMonth := StrToIntDef(vArr[1], 1);
          vDay := StrToIntDef(vArr[2], 1);
          if not TryEncodeDateTime(vYear, vMonth, vDay, 0, 0, 0, 0, vDate) then
            vDate := now;
        end;
    else
      vDate := Now;
    end;
    Memo2.Lines.Add(FormatDateTime('YYYY-MM-DD', vDate));
  end;

end;

来源:

相关阅读 >>

Delphi 基础学习指定字符替换其他字符

Delphi 比较图片是否相同

Delphi 根据字符串分隔符位置取值

Delphi 关于字符串, 之前没这样用过

dll 使用 pchar 参数的小例子

Delphi post数据与对应的接收方式

Delphi 根据扩展名的文件搜索

Delphi record,两种声明方式

Delphi编写系统服务

Delphi各个版本编译开关值

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...