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 =  [NSStringstringWithFormat: @"%@%@.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方法.

你可能感兴趣的:(ios,api,Path)