質問編集履歴

2

回答頂いたものを試してみました。

2020/09/12 10:45

投稿

mskRR
mskRR

スコア6

test CHANGED
File without changes
test CHANGED
@@ -41,3 +41,45 @@
41
41
  二桁の文字列で桁が足りない部分を空白で埋めたいです。
42
42
 
43
43
  現状のコードだとStringに変換したあと先頭に空白を付与する動きとなってしまいます。
44
+
45
+
46
+
47
+
48
+
49
+ `%2.2d`でためしたところ、ゼロ埋めになってしまいます。
50
+
51
+
52
+
53
+ ```swift
54
+
55
+ let int1 = 88
56
+
57
+ let int2 = 8
58
+
59
+
60
+
61
+ let str1 = String(format: "%2.2d", int1) // => " 88"
62
+
63
+ let str2 = String(format: "%2.2d", int2) // => " 08"
64
+
65
+
66
+
67
+ print(str1)
68
+
69
+ print(str2)
70
+
71
+
72
+
73
+ let str3 = String(format: "%02d", int1) // => "88"
74
+
75
+ let str4 = String(format: "%02d", int2) // => "08"
76
+
77
+
78
+
79
+ print(str3)
80
+
81
+ print(str4)
82
+
83
+
84
+
85
+ ```

1

コードを追記します。

2020/09/12 10:45

投稿

mskRR
mskRR

スコア6

test CHANGED
File without changes
test CHANGED
@@ -12,7 +12,27 @@
12
12
 
13
13
  let str1 = String(format: "% 2d", int1) // => " 88"
14
14
 
15
- let str1 = String(format: "% 2d", int2) // => " 8"
15
+ let str2 = String(format: "% 2d", int2) // => " 8"
16
+
17
+
18
+
19
+ print(str1)
20
+
21
+ print(str2)
22
+
23
+
24
+
25
+ // ゼロパディングはできるようです。
26
+
27
+ let str3 = String(format: "%02d", int1) // => "88"
28
+
29
+ let str4 = String(format: "%02d", int2) // => "08"
30
+
31
+
32
+
33
+ print(str3)
34
+
35
+ print(str4)
16
36
 
17
37
  ```
18
38