回答編集履歴
2
勘違いしてたので元に戻した
answer
CHANGED
@@ -1,23 +1,3 @@
|
|
1
1
|
```swift
|
2
2
|
let csvStr = arrayOfArray.map { $0.map { "\"" + $0 + "\"" }.joined(separator: ",") }.joined(separator: "\n")
|
3
|
-
```
|
4
|
-
|
5
|
-
----
|
6
|
-
追加
|
7
|
-
バラバラに見てみましょう。
|
8
|
-
まず、配列の中の配列部分。
|
9
|
-
```swift
|
10
|
-
let innerArray = ["xxx","AAA","1,000","2,000"]
|
11
|
-
innerArray
|
12
|
-
.map { "\"" + $0 + "\"" } // -> ["\"xxx\"","\"AAA\"","\"1,000\"","\"2,000\""] 各要素を"で囲む
|
13
|
-
.joined(separator: ",") // -> "xxx","AAA","1,000","2,000" 各要素を,で連結
|
14
|
-
```
|
15
|
-
一つの配列内の配列が、CVS1行分に変換されます。
|
16
|
-
|
17
|
-
次に外側。
|
18
|
-
```swift
|
19
|
-
|
20
|
-
let convertedArray = ["\"\"xxx\",\"AAA\",\"1,000\",\"2,000\"\"", "\"YYY\",\"BBB\",\"1,100\",\"2,000\"", "\"ZZZ\",\"CCC\",\"2,000\",\"3,000\""]
|
21
|
-
convertedArray
|
22
|
-
.joined(separator: "\n") // 各要素を改行で連結
|
23
3
|
```
|
1
追加
answer
CHANGED
@@ -1,3 +1,23 @@
|
|
1
1
|
```swift
|
2
2
|
let csvStr = arrayOfArray.map { $0.map { "\"" + $0 + "\"" }.joined(separator: ",") }.joined(separator: "\n")
|
3
|
+
```
|
4
|
+
|
5
|
+
----
|
6
|
+
追加
|
7
|
+
バラバラに見てみましょう。
|
8
|
+
まず、配列の中の配列部分。
|
9
|
+
```swift
|
10
|
+
let innerArray = ["xxx","AAA","1,000","2,000"]
|
11
|
+
innerArray
|
12
|
+
.map { "\"" + $0 + "\"" } // -> ["\"xxx\"","\"AAA\"","\"1,000\"","\"2,000\""] 各要素を"で囲む
|
13
|
+
.joined(separator: ",") // -> "xxx","AAA","1,000","2,000" 各要素を,で連結
|
14
|
+
```
|
15
|
+
一つの配列内の配列が、CVS1行分に変換されます。
|
16
|
+
|
17
|
+
次に外側。
|
18
|
+
```swift
|
19
|
+
|
20
|
+
let convertedArray = ["\"\"xxx\",\"AAA\",\"1,000\",\"2,000\"\"", "\"YYY\",\"BBB\",\"1,100\",\"2,000\"", "\"ZZZ\",\"CCC\",\"2,000\",\"3,000\""]
|
21
|
+
convertedArray
|
22
|
+
.joined(separator: "\n") // 各要素を改行で連結
|
3
23
|
```
|