回答編集履歴

3

追記

2017/03/06 12:56

投稿

xAxis
xAxis

スコア1349

test CHANGED
@@ -1,6 +1,6 @@
1
1
  ```swift
2
2
 
3
- let date = Date()
3
+ let date = Date() //2017-03/06-21:00
4
4
 
5
5
  let calendar = Calendar(identifier: .gregorian)
6
6
 

2

誤字の修正

2017/03/06 12:56

投稿

xAxis
xAxis

スコア1349

test CHANGED
@@ -36,9 +36,9 @@
36
36
 
37
37
  date = calendar.date(byAdding: .day, value: -1, to: date)! //2017-03/05-21:00
38
38
 
39
- date = calendar.date(byAdding: .minute, value: 2, to: date)! //2017-03/05-23:00
39
+ date = calendar.date(byAdding: .hour, value: 2, to: date)! //2017-03/05-23:00
40
40
 
41
- date = calendar.date(byAdding: .hour, value: 59, to: date)! //2017-03/05-23:59
41
+ date = calendar.date(byAdding: .minute, value: 59, to: date)! //2017-03/05-23:59
42
42
 
43
43
 
44
44
 

1

修正

2017/03/06 12:53

投稿

xAxis
xAxis

スコア1349

test CHANGED
@@ -1,15 +1,47 @@
1
- 一日前にしたい、だと
2
-
3
1
  ```swift
4
2
 
5
3
  let date = Date()
6
4
 
7
5
  let calendar = Calendar(identifier: .gregorian)
8
6
 
7
+
8
+
9
- let yesterday = calendar.date(byAdding: .day, value: -1, to: date)!
9
+ var components = calendar.dateComponents([.day, .hour, .minute], from: date)
10
+
11
+
12
+
13
+ components.day = 5
14
+
15
+ components.hour = 23
16
+
17
+ components.minute = 59
18
+
19
+
20
+
21
+ let yesterday = calendar.date(from: components)! //2017-03/05-23:59
10
22
 
11
23
  ```
12
24
 
13
- のように任意のdateから加減してやる方法があります。
14
25
 
26
+
27
+ とやるか
28
+
29
+ ```swift
30
+
31
+
32
+
33
+ var date = Date() //2017-03/06-21:00
34
+
15
- このケースでは一日前なのでvalueを-1にしてますが翌日にしたいだと+1ですね。
35
+ let calendar = Calendar(identifier: .gregorian)
36
+
37
+ date = calendar.date(byAdding: .day, value: -1, to: date)! //2017-03/05-21:00
38
+
39
+ date = calendar.date(byAdding: .minute, value: 2, to: date)! //2017-03/05-23:00
40
+
41
+ date = calendar.date(byAdding: .hour, value: 59, to: date)! //2017-03/05-23:59
42
+
43
+
44
+
45
+ ```
46
+
47
+ とやる方法があります。