zoukankan      html  css  js  c++  java
  • Iso8601 日期格式

    unit Iso8601Unit;
    
    interface
    
    type
      TIso8601 = class(TObject)
      public
        class function DateTimeFromIso8601(const Value: string): TDateTime; static;
        class function UtcDateTimeToIso8601(const Value: TDateTime): string; static;
        class function DateTimeToIso8601(const Value: TDateTime): string; static;
        class function UtcNow: TDateTime; static;
        class function ToUtc(const Value: TDateTime): TDateTime; static;
        class function FromUtc(const Value: TDateTime): TDateTime; static;
      end;
    
    implementation
    
    uses
      IdGlobalProtocols, {IdGlobal for Index}   SysUtils,
      XSBuiltIns;
    
    class function TIso8601.DateTimeFromIso8601(const Value: string): TDateTime;
    begin
      with TXSDateTime.Create() do
      try
        XSToNative(value); // convert from WideString
        Result := AsDateTime; // convert to TDateTime  finally
      finally
        Free();
      end;
    end;
    
    class function TIso8601.UtcDateTimeToIso8601(const Value: TDateTime): string;
    begin
      with TXSDateTime.Create() do
      try
        AsUTCDateTime := Value;
        Result := NativeToXS; // convert to WideString
      finally
        Free();
      end;
    end;
    
    class function TIso8601.DateTimeToIso8601(const Value: TDateTime): string;
    begin
      with TXSDateTime.Create() do
      try
        AsDateTime := Value; // convert from TDateTime
        Result := NativeToXS; // convert to WideString
      finally
        Free();
      end;
    end;
    
    class function TIso8601.UtcNow: TDateTime;
    begin
      Result := ToUtc(Now);
    end;
    
    class function TIso8601.ToUtc(const Value: TDateTime): TDateTime;
    var
      Bias: TDateTime;
    begin
      Bias := TimeZoneBias;
      Result := Value + TimeZoneBias;
    end;
    
    class function TIso8601.FromUtc(const Value: TDateTime): TDateTime;
    var
      Bias: TDateTime;
    begin
      Bias := TimeZoneBias;
      Result := Value - TimeZoneBias;
    end;
    
    end.
  • 相关阅读:
    JAVA变量的作用域
    SQLite
    ajax
    浏览器调试
    SQL链接
    Computer
    Sql知识点总结
    Web Socket
    秒杀
    副业
  • 原文地址:https://www.cnblogs.com/starluck/p/4293062.html
Copyright © 2011-2022 走看看