struct Time::Format
Overview
Specifies the format to convert a Time to and from a String.
The pattern of a format is a String with directives. Directives being with a percent (%) character. Any text not listed as a directive will be passed/parsed through the output/input string.
The directives are:
- %a: short day name (Sun, Mon, Tue, ...)
- %^a: short day name, upcase (SUN, MON, TUE, ...)
- %A: day name (Sunday, Monday, Tuesday, ...)
- %^A: day name, upcase (SUNDAY, MONDAY, TUESDAY, ...)
- %b: short month name (Jan, Feb, Mar, ...)
- %^b: short month name, upcase (JAN, FEB, MAR, ...)
- %B: month name (January, February, March, ...)
- %^B: month name, upcase (JANUARY, FEBRUARY, MARCH, ...)
- %c: date and time (Tue Apr 5 10:26:19 2016)
- %C: year divided by 100
- %d: day of month, zero padded (01, 02, ...)
- %-d: day of month (1, 2, ..., 31)
- %D: date (04/05/16)
- %e: day of month, blank padded (" 1", " 2", ..., "10", "11", ...)
- %F: ISO 8601 date (2016-04-05)
- %h: (same as %b) short month name (Jan, Feb, Mar, ...)
- %H: hour of the day, 24-hour clock, zero padded (00, 01, ..., 24)
- %I: hour of the day, 12-hour clock, zero padded (00, 01, ..., 12)
- %j: day of year, zero padded (001, 002, ..., 365)
- %k: hour of the day, 24-hour clock, blank padded (" 0", " 1", ..., "24")
- %l: hour of the day, 12-hour clock, blank padded (" 0", " 1", ..., "12")
- %L: milliseconds, zero padded (000, 001, ..., 999)
- %m: month number, zero padded (01, 02, ..., 12)
- %_m: month number, blank padded (" 1", " 2", ..., "12")
- %-m: month number (1, 2, ..., 12)
- %M: minute, zero padded (00, 01, 02, ..., 59)
- %p: am-pm (lowercase)
- %P: AM-PM (uppercase)
- %r: 12-hour time (03:04:05 AM)
- %R: 24-hour time (13:04)
- %s: seconds since unix epoch (see Time.epoch)
- %S: seconds, zero padded (00, 01, ..., 59)
- %T: 24-hour time (13:04:05)
- %u: day of week (Monday is 1, 1..7)
- %w: day of week (Sunday is 0, 0..6)
- %x: (same as %D) date (04/05/16)
- %X: (same as %T) 24-hour time (13:04:05)
- %y: year modulo 100
- %Y: year, zero padded
- %z: time zone as hour and minute offset from UTC (+0900)
- %:z: time zone as hour and minute offset from UTC with a colon (+09:00)
- %::z: time zone as hour, minute and second offset from UTC with a colon (+09:00:00)
Defined in:
time/format.crtime/format/pattern.cr
time/format/formatter.cr
time/format/parser.cr
json/from_json.cr
json/to_json.cr
yaml/from_yaml.cr
Constant Summary
- 
        ISO_8601_DATE = new("%F")
- 
        The ISO 8601 date format. This is just "%F".
Class Method Summary
- 
        .new(pattern : String, kind = Time::Kind::Unspecified)
        
          Creates a new Time::Format with the given pattern. 
Instance Method Summary
- 
        #format(time : Time, io : IO)
        
          Formats a Time into the given io. 
- 
        #format(time : Time) : String
        
          Turns a Time into a String. 
- #from_json(pull : JSON::PullParser)
- #from_yaml(pull : YAML::PullParser)
- 
        #parse(string, kind = @kind) : Time
        
          Parses a string into a Time. 
- 
        #pattern : String
        
          Returns the string pattern of this format. 
- #to_json(value : Time, io : IO)
Instance methods inherited from struct Struct
  
  
    
      ==(other : self) : Bool
    ==, 
    
  
    
      hash : Int32
    hash, 
    
  
    
      inspect(io : IO) : Nil
    inspect, 
    
  
    
      to_s(io)
    to_s
    
  
    
  
    
  Instance methods inherited from struct Value
  
  
    
      ==(other)
    ==, 
    
  
    
      dup
    dup
    
  
    
  
    
  Instance methods inherited from class Object
  
  
    
      !=(other)
    !=, 
    
  
    
      !~(other)
    !~, 
    
  
    
      ==(other)
    ==, 
    
  
    
      ===(other)===(other : YAML::Any)
===(other : JSON::Any) ===, =~(other) =~, class class, crystal_type_id crystal_type_id, dup dup, hash hash, inspect(io : IO)
inspect inspect, itself itself, not_nil! not_nil!, tap(&block) tap, to_json to_json, to_pretty_json(indent : String = " ")
to_pretty_json(io : IO, indent : String = " ") to_pretty_json, to_s
to_s(io : IO) to_s, to_yaml
to_yaml(io : IO) to_yaml, try(&block) try
Class methods inherited from class Object
  
  
    
      ==(other : Class)
    ==, 
    
  
    
      ===(other)
    ===, 
    
  
    
      cast(other) : self
    cast, 
    
  
    
      clone
    clone, 
    
  
    
      dup
    dup, 
    
  
    
      from_json(string_or_io) : selffrom_json(string_or_io, root : String) : self from_json, from_yaml(string : String) : self from_yaml, hash hash, inspect(io) inspect, name : String name, nilable? nilable?, to_s(io) to_s, |(other : U.class) forall U |
Class Method Detail
Creates a new Time::Format with the given pattern. The given time kind will be used when parsing a Time and no time zone is found in it.