首页 > 博客 > 正文

ios访问Documents目录下的文件

ios访问Documents目录下的文件,注意:

1>.拼接的路径字符串是否正确;

2>.拼接的路径的方式:

第一种, 字符串变量 + …+字符串常量 拼接:

demo1:

NSString* docPath = [NSHomeDirectory() stringByAppendingPathComponent: @”Documents”];

NSString* path = [NSString stringWithFormat: @”%@/%@”, docPath, @”23.png”];

demo2:

NSString* docPath = [NSHomeDirectory()stringByAppendingPathComponent: @”Documents”];

NSString* path =  [NSString stringWithFormat: @”%@%@.png”, docPath, aFileName];

“23.png”, “.png”是我说的常量.

第二种, 字符串变量 + …+字符串变量 拼接:

NSString* docPath = [NSHomeDirectory() stringByAppendingPathComponent: @”Documents”];

NSString* path =  [NSString stringWithFormat: @”%@%@”, docPath, aFileName];

现在要说的是第二种方法是错误的,因为在NSString字符串变量末位有’\0’字符,

而文件相关的API要求路径字符串末位不能包含’\0’字符,所以在路径format的时候要注意最后一个字符串不能为NSString

变量,必须为字符串常量.如果要在一个路径后面追加路径NSString变量, 请使用stringByAppendingPathComponent方法,

添加后缀请使用stringByAppendingPathExtension方法.

Back