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方法.