Data.txt包含这样的东西:
“猫”
“狗”
“老鼠”
“猫”
“狗”
“老鼠”
我想用该文件中的字符串填充数组(dico [0] =“Cat”,dico [1] =“Dog”,aso).
我发现了这个,How to call Objective-C’s NSArray class method from within Swift?和Read and write data from text file,但是当我使用这段代码时:
let bundle = NSBundle.mainBundle() let path = bundle.pathForResource("data",ofType: "txt") let dico = NSArray(contentsOfFile: path) println("\(dico[0])") println("\(dico.count)")
我得到的只是“零”和“0”.
我想我的文件中的数据不是按照应该的方式编写的,我使用的代码不对,但我无法理解为什么.
而且,当我使用这段代码时,它没关系:
let bundle = NSBundle.mainBundle() let path = bundle.pathForResource("data",ofType: "txt") let dico = Nsstring(contentsOfFile: path) println("\(dico)")
解决方法
这不是arrayWithContentsOfFile的工作原理.
它期望作为其参数的文件路径,该文件包含由writetoFile:atomically:方法生成的数组的字符串表示形式.
出于您的目的,您可以使用第二种方法,并通过在字符串上调用componentsSeparatedByString()来补充.
let bundle = NSBundle.mainBundle() let path = bundle.pathForResource("data",ofType: "txt") let dico = Nsstring(contentsOfFile: path).componentsSeparatedByString("\n")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。