class MasterViewController: UITableViewController {
let firstTable = [String]()
let secondTable = [String]()
var path = NSBundle.mainBundle().pathForResource("Chapters", ofType: "txt")
var data = String(contentsOfFile:path, encoding: NSUTF8StringEncoding, error: nil)
var content = (data)
var line: [String] = content.componentsSeparatedByString("\n")
错误:
' MasterViewController.Type'没有名为' path'
的成员
@dip的下一个问题>>为什么表打印出一个初始的空字符串?文本打印在第二个单元格中,而不是从0开始
var path: String?
var data: String?
var TableView1 = [String]()
override func viewDidLoad() {
super.viewDidLoad()
self.path = NSBundle.mainBundle().pathForResource("textFile", ofType: "txt")
self.data = String(contentsOfFile:path!, encoding: NSUTF8StringEncoding, error: nil)
if var content = (data){
//var line: [String] = content.componentsSeparatedByString("\n")
var chp: [String] = content.componentsSeparatedByString("#")
TableView1 += chp
}...
答案 0 :(得分:1)
对于计算属性,您必须通过setter方法访问, 例如,使可选的全局变量像
var path:String?
然后让我们说明来自viewDidload 中的设置值
self.path = NSBundle.mainBundle().pathForResource("Chapters", ofType: "txt")
你的错误会消失!希望它能帮到你!
答案 1 :(得分:1)
以下更改也可能有效;
private class var path:String {
get {
return NSBundle.mainBundle().pathForResource("Chapters", ofType: "txt")!
}
}
var data = String(contentsOfFile:path, encoding: NSUTF8StringEncoding, error: nil)
答案 2 :(得分:0)
初始化data
实例是错误的方法。而不是在你的类方法中这样做,假设你可以在viewDidLoad
方法中这样做:
override func viewDidLoad() {
super.viewDidLoad()
var path = NSBundle.mainBundle().pathForResource("Chapters", ofType: "txt")
var data = String(contentsOfFile:path, encoding: NSUTF8StringEncoding, error: nil)
var content = (data)
var line: [String] = content.componentsSeparatedByString("\n")
}