teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

勘違いしてたので元に戻した

2018/01/01 23:31

投稿

MasakiHori
MasakiHori

スコア3391

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

追加

2018/01/01 23:31

投稿

MasakiHori
MasakiHori

スコア3391

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
  ```