| ... | ... | @@ -163,7 +163,7 @@ let params: [String:Any] = [ |
|
|
|
"key_data", data, // Data型
|
|
|
|
]
|
|
|
|
|
|
|
|
public static func postMultipart(
|
|
|
|
postMultipart(
|
|
|
|
url: /*URL*/,
|
|
|
|
params: params,
|
|
|
|
makeFileName: { key in
|
| ... | ... | @@ -177,11 +177,47 @@ public static func postMultipart( |
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
## データ処理
|
|
|
|
|
|
|
|
### CSV
|
|
|
|
|
|
|
|
```swift
|
|
|
|
// CSVから読み込む
|
|
|
|
guard let csvUrl = Bundle.main.url(forResource: "sample", withExtension: "csv") else {
|
|
|
|
// sample.csvがない場合
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
Task {
|
|
|
|
var dataArr: [[String:Any]] = []
|
|
|
|
do {
|
|
|
|
// CSV内にHeaderテキストがアル場合、skipLines=1などを指定
|
|
|
|
try await parseCsvAsync(url: csvUrl, skipLines: 0) { row in
|
|
|
|
guard row.count >= 2 else { return }
|
|
|
|
|
|
|
|
var item: [String:Any] = [:]
|
|
|
|
for col in row {
|
|
|
|
switch col.colIndex {
|
|
|
|
case 0: // 1番目のカラム
|
|
|
|
item.0 = col.value
|
|
|
|
|
|
|
|
case 1: // 2番目のカラム
|
|
|
|
item.1 = col.asInt
|
|
|
|
|
|
|
|
default: continue
|
|
|
|
}
|
|
|
|
}
|
|
|
|
dataArr.append(item)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch {
|
|
|
|
// エラー
|
|
|
|
}
|
|
|
|
|
|
|
|
didLoad(dataArr)
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
### JSON
|
|
|
|
|
|
|
|
## Utils |
|
|
\ No newline at end of file |