我正在尝试使用This第三方库从users.csv
文件中获取数据,因此我从该库中添加了CSV.swift
文件,并添加了users.csv
这样的数据:
id,name,age
1,Alice,18
2,Bob,19
3,Charlie,20
我尝试以这种方式从这个.csv
文件中获取数据,如图书馆描述中所述:
override func viewDidLoad() {
super.viewDidLoad()
let csvURL = NSURL(string: "users.csv")
var error: NSErrorPointer = nil
let csv = CSV(contentsOfURL: csvURL!, error: error)!
// Rows
let rows = csv.rows
let headers = csv.headers //=> ["id", "name", "age"]
let alice = csv.rows[0] //=> ["id": "1", "name": "Alice", "age": "18"]
let bob = csv.rows[1] //=> ["id": "2", "name": "Bob", "age": "19"]
// Columns
let columns = csv.columns
let names = csv.columns["name"] //=> ["Alice", "Bob", "Charlie"]
let ages = csv.columns["age"] //=> ["18", "19", "20"]
}
但是我收到了错误:let alice = csv.rows[0]
并且控制台中的错误是:fatal error: Cannot index empty buffer
我不明白这里有什么问题。
这是我项目的screenShot:http://imgur.com/l3gqt2j
请帮助我。
答案 0 :(得分:2)
问题是以下代码无法找到您所指的文件:
let csvURL = NSURL(string: "users.csv")
将其更改为:
let csvURL = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("users", ofType: "csv")!)