以下是代码:
let jsonData = NSData(contentsOfFile: "/Users/7stud/xcode_projects/iOS/my_json.json")
那个代码在游乐场,我对jsonData没有问题。我没有输入路径:我将文件从Finder拖到终端窗口,该窗口在光标处输入文件的完整路径。然后我复制了那个绝对路径并将其粘贴到我的代码中 - 所以没有拼写错误。
根据docs:
NSData的
+ dataWithContentsOfFile:
通过读取文件中的每个字节来创建并返回数据对象 由给定路径指定。
声明目标-C
+(instancetype)dataWithContentsOfFile:(NSString *)path参数
路径|从中读取数据的文件的绝对路径。返回值
通过读取path指定的文件中的每个字节来获取数据对象。如果数据对象不能,则返回nil 创建
没有Swift的定义。
答案 0 :(得分:0)
面对同样的问题和快速解决方法,我将文件直接放在NSFileManager返回的位置,然后访问该文件以读取内容。
这是剪辑:
var fileManager = NSFileManager.defaultManager()
var path:String! = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true).first
var data = fileManager.contentsAtPath(path+"/a.txt")
try NSString(data: data!, encoding: NSUTF8StringEncoding)
我将文件a.txt放在NSSearchPathForDirectoriesInDomains方法返回的路径上,并且能够以字符串形式检索它。