ios文件读取

摘要:
/**@Brief沙盒下的各种文件*/-getPaths{/***@Brief获取沙盒的路径*/NSString*HomeDirectory=NSHomeDirectory() ; NSLog;/*返回值是数组的原因:此方法最初用于mac os开发。对于PC端,可以有多个用户。因此,在获取时,将获取所有用户的文件夹路径。然而,当将此方法用于ios开发时,由于移动端仅使用一个用户,因此只能获得一条路径*/NSArray*paths_1=NSSearchPathForDirectoriesInDomains;NSString*libraryDirectory=[paths_1firstObject];NSLog;/***@Brief获取缓存目录路径以存储缓存文件,保存应用程序的持久数据,并在应用程序升级或关闭后保存数据,iTunes不会同步这些数据。

     /*

     *  @brief沙盒下的各种文件

     */

- (void)getPaths

{

    /**

     *  @brief获取沙盒的路径

     */

    

    NSString * HomeDirectory = NSHomeDirectory();

    

    NSLog(@"%@",HomeDirectory);

    

    /*返回值是数组的原因:该方法一开始是用于mac-os开发,PC端来说,可以有多个用户,所以获取时,会获取到所有用户的文件夹路径,但是该方法用于ios开发时,因为移动端只用一个用户,所以获取到的路径也只有一个。*/

    

    /**

     *  @brief获取Documents目录路径  苹果建议将程序创建产生的文件以及应用浏览产生的文件数据保存在该目录下 iTunes备份和恢复的时候会包括此目录

     */

    

    NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

    

    NSString * documentDirectory = [pathsfirstObject];

    

    NSLog(@"%@",documentDirectory);

    

    /**

     *  @brief获取Library目录路径   保存程序的默认设置或其他状态信息.  Library下的Preferences:存储偏好设置。比如:应用是否是第一次启动,保存用户名和密码等。

     */

    

    NSArray * paths_1 = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);

    

    NSString * libraryDirectory = [paths_1firstObject];

    

    NSLog(@"%@",libraryDirectory);

    

    /**

     *  @brief获取Cache目录路径(Library下的文件)  存放缓存文件,保存应用的持久化数据,用于应用的升级或者应用关闭后的数据保存,不会被itunes同步。

     */

    

    NSArray * path_2 = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);

    

    NSString * cachePath = [path_2firstObject];

    

    NSLog(@"%@",cachePath);

    

    /**

     *  @brief获取tmp目录路径  提供一个临时创建的文件,不需要持久化,在应用关闭后,该目录下的数据将删除,页可能系统在程序不运行的时候清楚。

     */

    

    NSString * tmpDirectory = NSTemporaryDirectory();

    

    NSLog(@"%@",tmpDirectory);

}

     /*

     *  @brief文件的操作

     */

- (void)fileManager

{

    /**

     *  @brief创建

     */

    [selfcreateFile];

    /**

     *  @brief写入

     */

    [selfWriteToFile];

    /**

     *  @brief读取

     */

    [selfreadFile];

    /**

     *  @brief删除

     */

    [selfdeleteFile];

}

- (void)createFile

{

    NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

    NSString * documentsDirectory = [pathsfirstObject];

    NSFileManager * fileManager = [NSFileManagerdefaultManager];

    NSString * testDirectory = [documentsDirectorystringByAppendingPathComponent:@"MyTest"];

    /**

     *  @brief创建文件夹

     */

    BOOLres = [fileManagercreateDirectoryAtPath:testDirectorywithIntermediateDirectories:YESattributes:nilerror:nil];

    if (res) {

        /**

         *  @brief创建文件

         */

        NSString * testPath = [testDirectorystringByAppendingPathComponent:@"test.text"];

        NSLog(@"%@",testPath);

        NSString * content = @"我的测试数据";

        /**

         *

         *  @brief写入数据

         */

        BOOLres = [contentwriteToFile:testPathatomically:YESencoding:NSUTF8StringEncodingerror:nil];

        if (res) {

            NSLog(@"写入数据成功");

        }

    }

}

 

- (void)WriteToFile

{

    NSFileManager * defaultManager = [NSFileManagerdefaultManager];

    

    NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

    

    NSString * documentsDirectory = [pathsfirstObject];

    

    NSString * testDirectory = [documentsDirectorystringByAppendingPathComponent:@"MyTest"];

    

    NSString * testPath = [testDirectorystringByAppendingPathComponent:@"test.text"];

    

    NSString * content = @"我的第二次测试";

    /**

     *  @brief文件的可写性(isWritableFileAtPath

     */

    if ([defaultManagerisWritableFileAtPath:testPath]) {

        

        /**

         *  @brief写入数据

         */

        if ([contentwriteToFile:testPathatomically:NOencoding:NSUTF8StringEncodingerror:nil]) {

            NSLog(@"写入成功");

        }

    }

}

 

- (void)readFile

{

    NSFileManager * defaultManager = [NSFileManagerdefaultManager];

    NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

    NSString * documentsDirectory = [pathsfirstObject];

    NSString * testDirectory = [documentsDirectorystringByAppendingPathComponent:@"MyTest"];

    NSString * testPath = [testDirectorystringByAppendingPathComponent:@"test.text"];

    /**

     *  @brief查询文件的可读性

     */

    if ([defaultManagerisReadableFileAtPath:testPath]) {

        NSString  * text = [NSStringstringWithContentsOfFile:testPathencoding:NSUTF8StringEncodingerror:nil];

        NSLog(@"%@",text);

    }

}

- (void)deleteFile

{

    NSFileManager * defaultManager = [NSFileManagerdefaultManager];

    NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

    NSString * documentsDirectory = [pathsfirstObject];

    NSString * testDirectory = [documentsDirectorystringByAppendingPathComponent:@"MyTest"];

    NSLog(@"%@",testDirectory);

    /**

     *  @brief查询文件的可执行性(isExecutableFileAtPath

     */

    NSLog(@"%@",[defaultManagerisExecutableFileAtPath:testDirectory]?@"YES":@"NO");

    /**

     *  @brief文件的可删除性(isDeletableFileAtPath

     */

    if ([defaultManagerisDeletableFileAtPath:testDirectory]) {

        /**

         *  @brief删除指定路径的文件

         */

        [defaultManagerremoveItemAtPath:testDirectoryerror:nil];

    }

    NSLog(@"%@",[defaultManagerisExecutableFileAtPath:testDirectory]?@"YES":@"NO");

}

免责声明:文章转载自《ios文件读取》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇SQL基础之 时间戳统信操作系统 安装nginx下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

iOS开发时间戳与时间,时区的转换,汉字与UTF8,16进制的转换

原文:http://blog.sina.com.cn/s/blog_68661bd80101njdo.html //获取当前系统的时间戳+(long)getTimeSp{    long time;    NSDate *fromdate=[NSDate date];    time=(long)[fromdate timeIntervalSince197...

Objective-C NSFileManager的使用 各种文件操作

所有方法 都很简单,大概记录一下,写文件并没有是追加的方式而是简单的覆盖 //创建文件夹 - (BOOL)creatDir:(NSString*)newDirName at:(NSString*)dirName ; //创建文件 - (BOOL)creatFile:(NSString*)fileName at:(NSString*)dirName ; //...

ios 关于如何在app里面设置版本更新功能

#import "ViewController.h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.title = @"版本检测更新"; self....

iOS --获取当前时间和当前时间戳

//获取当前的时间 +(NSString*)getCurrentTimes{ NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; // ----------设置你想要的格式,hh与HH的区别:分别表示12小时制,24小时制 [formatter setDateFormat:@"YYYY-...

IOS管理文件和目录

  1、常见的NSFileManager文件方法 -(NSData *)contentsAtPath:path  //从一个文件读取数据 -(BOOL)createFileAtPath: path contents:(NSData *)data attributes:attr  //向一个文件写入数据 -(BOOL)removeItemAtPath:pa...

iOS数据持久化的方式

概论 所谓的持久化,就是将数据保存到硬盘中,使得在应用程序或机器重启后可以继续访问之前保存的数据。在iOS开发中,有很多数据持久化的方案,接下来我将尝试着介绍一下5种方案: plist文件(属性列表) preference(偏好设置) NSKeyedArchiver(归档) SQLite 3 CoreData 沙盒 在介绍各种存储方法之前,有必要说明以...