NSData:读取文件

时间:2016-05-20 07:24:45

标签: swift2 swift-playground

以下是代码:

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的定义。

1 个答案:

答案 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方法返回的路径上,并且能够以字符串形式检索它。