HOME > 問題解決一覧 > tsvファイルをSwiftで取り込みたい
iOSアプリでカンマが多いデータを扱うため、csvファイルでなくtsvファイル(タブ区切り)を読み込みたいのですがどのようにすればよいでしょうか。
<環境>
tsvファイルはタブ区切りなのでタブの文字t
で分割して配列に入れられます。
サンプルコード(Xcode8、Swift3.0)
data.tsv
1-1 1-2 1-3 1-4
2-1 2-2 2-3 2-4
3-1 3-2 3-3 3-4
4-1 4-2 4-3 4-4
ViewController.swift
// data.tsvファイルを配列に格納
if let tsvPath = Bundle.main.path(forResource: "data", ofType: "tsv") {
var tsvString=""
do{
// ファイルパスからtsvファイルをStringとして取得
tsvString = try NSString(contentsOfFile: tsvPath, encoding: String.Encoding.utf8.rawValue) as String
} catch let error as NSError {
print(error.localizedDescription)
}
// 1行づつ取得してパース
tsvString.enumerateLines{ (line, stop) -> () in
let datas = line.components(separatedBy: "t") // タブで区切る
print("datas:(datas)")
}
}
この記事に関する質問やご意見・ご感想がありましたら、下記よりコメントください。
Githubアカウントでログインしていれば誰でも投稿できます。