delphi 中文大写日期转换函数  
官方Delphi 学习QQ群: 682628230(三千人)
频道

delphi 中文大写日期转换函数


//中文大写日期  zzh 20171109
function ChineseDate(ADate: TDateTime): string;
  const  CNC = '〇一二三四五六七八九';
  function numtoUpper(Anum: Integer): String;
  var
    i, n: Integer;
    numstr: string;
  begin
    Result := '';
    numstr := IntToStr(Anum);
    for i := 1 to Length(numstr) do
    begin
      n := StrToInt(numstr[i]);
      Result := Result+Copy(CNC,n*2+1,2);
    end;
  end;
  function monthtoUpper(Amonth: Integer): string;
  begin
    if (Amonth<10) then
      Result := numtoUpper(Amonth)
    else
      if (Amonth=10) then  Result := '十'
      else
        Result := '十'+numtoUpper(Amonth-10);
  end;
  function daytoupper(ADay: integer): string;
  var
    dstr: string;
  begin
    if (Aday<20) then
      Result := monthtoUpper(ADay)
    else
    begin
      dstr := IntToStr(ADay);
      if (dstr[2] = '0') then
        Result := numtoUpper(StrToInt(dstr[1]))+'十'
      else
        Result := numtoUpper(StrToInt(dstr[1]))+'十'
                 +numtoUpper(StrToInt(dstr[2]));
    end;
  end;
var
  CY,CM,CD: Integer;
begin
  CY := StrToInt(FormatDateTime('YYYY',ADate));
  CM := StrToInt(FormatDateTime('M',ADate));
  CD := StrToInt(FormatDateTime('D',ADate));
  Result := numtoUpper(CY)+'年'+monthtoUpper(CM)+'月'+daytoUpper(CD)+'日';
end;

推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.038317918777466 seconds