Upgrade to Pro — share decks privately, control downloads, hide ads and more …

日本のサマータイムに苦しめられた話 / japan_summertime

42a6a049ac8f5265f31858a9509217fb?s=47 uhooi
September 06, 2019

日本のサマータイムに苦しめられた話 / japan_summertime

42a6a049ac8f5265f31858a9509217fb?s=128

uhooi

September 06, 2019
Tweet

Transcript

  1. A J @ CD O! 901 0 06 L :

    2/  1
  2.    @ ( ) 2 S O

  3.  3  

  4. l / l / 4 6 0 6 9 @5

    172
  5. ) + 5       

     ( 0( + ) : @ 9   timezone "JST" NSDateFormatter
  6. 6     dateFormatter.dateFormat = @"yyyy/MM/dd"; // 

    →  [dateFormatter dateFromString:@"1951/05/06"]; [dateFormatter dateFromString:@"1951/05/07"]; 0
  7.  7  2019/09/06 → 2019-09-05 15:00:00 +0000 2019-09-06 00:00:00

    +0900  ! "
  8. 1951/05/06 → 1951-05-05 15:00:00 +0000 // iOS 9 1951/05/06 →

    (null) // iOS 10 1951/05/07 → 1951-05-06 14:00:00 +0000  8 
  9. 1951/05/06 → 1951-05-05 15:00:00 +0000 // iOS 9 1951/05/06 →

    (null) // iOS 10 1951/05/07 → 1951-05-06 14:00:00 +0000 9 6 / 0 9 5 1 
  10. 1951/05/06 → 1951-05-05 15:00:00 +0000 // iOS 9 1951/05/06 →

    (null) // iOS 10 1951/05/07 → 1951-05-06 14:00:00 +0000 10 5 / 0 91 @9 @ 61 
  11.  11

  12. 12 5 9 @ 15 0 / 6 5

  13. 13   !0

  14. 14   ! " + 0 01 0

  15. + 15   ! " 4 15 8 89

    9 0 8
  16. 16 : 0 0 !

  17.  17      dateFormatter.dateFormat = @"yyyy/MM/dd

    HH:mm:ss"; NSDate *date = [dateFormatter dateFromString:@"1951/05/05 23:59:59"]; [date dateByAddingTimeInterval:1.f]; // `date` 1
  18.   18  1951/05/05 23:59:59 1951/05/06 01:00:00 

  19. 19 @ 1 1 1

  20.   20  

  21. dateFormatter.dateFormat = @"yyyy/MM/dd HH:mm:ss"; [dateFormatter dateFromString:@"1951/05/06 01:00:00"]; [dateFormatter dateFromString:@"1951/05/07 00:00:00"];

     21 + 1
  22. // OS 1951/05/06 → 1951-05-05 15:00:00 +0000 1951/05/07 → 1951-05-06

    14:00:00 +0000     22   
  23.  23 J ! "

  24. l +,!$ %(&)   l * '"#  !

    24 @ 
  25. l 3 9 5 46490/4 8 464 @ l -

    3 9 :44 .87 3884 4 07 0 / /. # 30 3884 25
  26. 26   !  @ " +#