美文网首页
IOS 文件操作

IOS 文件操作

作者: CoderLJW | 来源:发表于2018-01-17 11:18 被阅读36次

文件操作

// file:///var/containers/Bundle/Application/4256C1D8-84BC-4F4C-A5A2-BCAAF8A83D2C/OTC_heartStick.app/pack_demo.txt
    // url读取是以 file://开始的
    NSURL *urlDemo = [[NSBundle mainBundle] URLForResource:@"pack_demo.txt" withExtension:nil];
    // 没有中文情况下可以使用  直接转string类型数据
    NSString *urlString = [urlDemo absoluteString];
    NSLog(@"%@", urlString);
    NSString *contentOne = [NSString stringWithContentsOfURL:urlDemo encoding:NSUTF8StringEncoding error:nil];
    
    // 直接以/xxxx/xxx,,,,开始
    NSString *path = [[NSBundle mainBundle] pathForResource:@"pack_demo.txt" ofType:nil];
    // 获取内容
    NSString *contenttwo = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
    NSLog(@"%@---%@", contentOne, contenttwo);
    
    // 返回路径的组成部分 <__NSArrayM 0x100956340>(
//    /,
//    var,
//    containers,
//    Bundle,
//    Application,
//    0B43ABDC-17AA-4BA3-BF10-B0DC129A2D07,
//    OTC_heartStick.app,
//    pack_demo.txt
//    )
    NSArray *patharray = [path pathComponents];
    NSLog(@"%@", patharray);
    // 返回路径最后组成部分 txt
    NSString *str = [path lastPathComponent];
    // 这种方式有一点不好,就是需要添加/
    [path stringByAppendingString:@"/appFile.text"];
    // 不需要添加/
    [path stringByAppendingPathComponent:@"appFile.text"];
    // 删除最后的组成部分
    str = [path stringByDeletingLastPathComponent];
    // 删除扩展名(.text被删除了)
    str = [path stringByDeletingPathExtension];
    // 获取扩展名
    str = [path pathExtension];
    // 添加扩展名
    [path stringByAppendingPathExtension:@".jpg"];
    
    //存储是有编码方式的,编程字节码
    //相当于Java中的解码和编码
    NSString *s = @"tsdfsdfsdfsdf";
    NSData *data = [s dataUsingEncoding:NSUTF8StringEncoding];
    s = [[NSString alloc] initWithData:data encoding:(NSUTF8StringEncoding)];
    
    //获取沙盒目录
    NSString *homePath = NSHomeDirectory();
    //在沙盒目录中创建一个文件file.text
    NSString *filePath = [homePath stringByAppendingPathComponent:@"Documents/file.text"];
    //NSFileManager是单利模式, 所以不能使用alloc+init创建
    NSFileManager *manager = [NSFileManager defaultManager];
    NSString *strone = @"无线互联";
    NSData *dataone = [strone dataUsingEncoding:NSUTF8StringEncoding];
    //参数:文件路径、文件内容、文件的属性
    BOOL sucess = [manager createFileAtPath:filePath contents:dataone attributes:nil];
    if(sucess){
        NSLog(@"文件创建成功");
    }else{
        NSLog(@"文件创建失败");
    }
    //创建文件夹
    NSString *filePaths = [homePath stringByAppendingPathComponent:@"Documents/file"];
    NSError *error;
    //需要传递一个创建失败的指针对象,记录创建失败的信息
    BOOL success1 = [manager createDirectoryAtPath:filePaths withIntermediateDirectories:YES attributes:nil error:&error];
    if(!success1){
        NSLog(@"创建成功");
    }else{
        NSLog(@"创建失败");
    }
    
    NSFileHandle *handle = [NSFileHandle fileHandleForReadingAtPath:path];
    NSFileManager *fileManager = [NSFileManager defaultManager];
    NSDictionary *fileAttr = [fileManager attributesOfItemAtPath:filePath error:nil];
    NSNumber *fileSize = [fileAttr objectForKey:NSFileSize];
    long long sizeValue = [fileSize longLongValue];
    NSLog(@"%@--%lld", fileSize, sizeValue);
    // 读取到文件后,使用特定支付分割
    NSArray *arrayString = [contenttwo componentsSeparatedByString:@"\r\n"];

相关文章

  • iOS 文件操作

    沙盒机制 沙盒的概念 沙盒是每一个iOS应用程序都会自动创建的一个文件系统目录(文件夹),而且沙盒还具有独立、封闭...

  • iOS 文件操作

    一、前言 在我们平时的开发过程中,经常会遇到数据本地化的需求,像图片处理、个人信息处理等,这时候我们一般会进行文件...

  • ios 文件操作

    1.判断文件是否存在 2.向文件中写内容

  • iOS文件操作

    一、获取沙盒下文件目录 沙盒应用根目录:NSHomeDirectory()是应用程序目录的路径,在改文件目录下有三...

  • iOS文件操作

    一直在倒腾iOS逆向,逆向水平受限于正向水平。边学iOS开发边学逆向,感觉这个过程有点艰辛。平时写代码写得不是很多...

  • [IOS] 文件操作

    1: 拖拽需要打包的文件至工程为蓝色,勾选 Copy items if needed and Create fol...

  • IOS 文件操作

    所谓文件操作是指我们通过程序操作文件 读 计算机读,对计算机来说,内存就相当于大脑从文件(存放在硬盘上)到内存,叫...

  • IOS 文件操作

    文件操作

  • ios 文件操作

    NSFileManager NSFileManager允许你对文件目录和文件进行基本操作。以下列出其一些常用方法。...

  • iOS 文件操作

    iOS文件(沙盒目录,文件创建、移动、复制等) 目录获取获取沙盒的主目录路径: (NSString *)homeD...

网友评论

      本文标题:IOS 文件操作

      本文链接:https://www.haomeiwen.com/subject/ekvyoxtx.html