Swiftで、CSVファイルをURLから読み込み
初めに
Swiftで、CSVファイルをDropBoxから読み込みたいなーって調べてた時、
出てきた記事の多くがCSVファイルをプロジェクトに突っ込んでから読み込んでたので、DropBoxから読み込むための覚え書き。
開発環境
Xcode 8.1
iOS 10.1
Swift 3.0
DropBox上のCSVファイルを読み込む
//最終的にデータを格納する配列
var fileData:[[String]] = []
//DropBox上のファイルデータを突っ込む変数
var csvString = ""
let pathURL = NSURL(string: "(DropBox上のファイルリンク)")
do {
//ここでは文字コードをUTF16で指定
csvString = try NSString(contentsOf: pathURL as! URL, encoding: String.Encoding.utf16.rawValue) as String
} catch let error as NSError {
print(error.localizedDescription)
}
//","区切りで配列に追加
csvString.enumerateLines { (line, stop) -> () in
fileData.append(line.components(separatedBy: ","))
}
DropBoxのリンクについて
//最終的にデータを格納する配列
var fileData:[[String]] = []
//DropBox上のファイルデータを突っ込む変数
var csvString = ""
let pathURL = NSURL(string: "(DropBox上のファイルリンク)")
do {
//ここでは文字コードをUTF16で指定
csvString = try NSString(contentsOf: pathURL as! URL, encoding: String.Encoding.utf16.rawValue) as String
} catch let error as NSError {
print(error.localizedDescription)
}
//","区切りで配列に追加
csvString.enumerateLines { (line, stop) -> () in
fileData.append(line.components(separatedBy: ","))
}
DropBox上のファイルを使用する際、普通にリンクをコピーするとダメなようです。
コピーしたリンクの
www.dropbox.com
この箇所を
dl.dropboxusercontent.com
に変えると良いようです。
最後に
このようにすることでDropBox上のファイルを読み込み、","区切りで配列に格納することができました。
まだまだ勉強中の身なので、間違いや蛇足な部分があるかもしれませんがご容赦ください。
参考
Author And Source
この問題について(Swiftで、CSVファイルをURLから読み込み), 我々は、より多くの情報をここで見つけました https://qiita.com/nwatabou/items/898bc4395adbb2e05f8d著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .