Class: Time
Overview
:nodoc:all
Class Method Summary collapse
Instance Method Summary collapse
-
#dos_equals(other) ⇒ Object
Dos time is only stored with two seconds accuracy.
- #to_binary_dos_date ⇒ Object
- #to_binary_dos_time ⇒ Object
Class Method Details
.parse_binary_dos_format(binaryDosDate, binaryDosTime) ⇒ Object
88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/rant/archive/rubyzip/stdrubyext.rb', line 88 def self.parse_binary_dos_format(binaryDosDate, binaryDosTime) second = 2 * ( 0b11111 & binaryDosTime) minute = ( 0b11111100000 & binaryDosTime) >> 5 hour = (0b1111100000000000 & binaryDosTime) >> 11 day = ( 0b11111 & binaryDosDate) month = ( 0b111100000 & binaryDosDate) >> 5 year = ((0b1111111000000000 & binaryDosDate) >> 9) + 1980 begin return Time.local(year, month, day, hour, minute, second) end end |
Instance Method Details
#dos_equals(other) ⇒ Object
Dos time is only stored with two seconds accuracy
84 85 86 |
# File 'lib/rant/archive/rubyzip/stdrubyext.rb', line 84 def dos_equals(other) to_i/2 == other.to_i/2 end |
#to_binary_dos_date ⇒ Object
77 78 79 80 81 |
# File 'lib/rant/archive/rubyzip/stdrubyext.rb', line 77 def to_binary_dos_date (day) + (month << 5) + ((year - 1980) << 9) end |
#to_binary_dos_time ⇒ Object
71 72 73 74 75 |
# File 'lib/rant/archive/rubyzip/stdrubyext.rb', line 71 def to_binary_dos_time (sec/2) + (min << 5) + (hour << 11) end |