• 【iOS】路径获取


    【问题描述】

    iOS应用中,主要有两种路径,一是Documents目录(即应用安装的路径),二是Bundle路径(即应用程序束)

    一、获取Documents路径

    - (NSString *)filePathInDoc:(NSString *)filename
    {
        NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
        NSString *documentDirectory=[paths objectAtIndex:0];
        return [documentDirectory stringByAppendingPathComponent:filename];
    }

    那么获取Doc目录下的文件Text.txt,如下:

    [self filePathInDoc:@"Text.txt"];

    二、获取Bundle路径

    - (NSString *)getFilePathInBundle:(NSString *)filename
    {
        NSString *nameWithoutExt = [filename stringByDeletingPathExtension];
        NSString *ext = [filename pathExtension];
        return [[NSBundle mainBundle] pathForResource:nameWithoutExt ofType:ext];
    }

    //- (NSString *)filePathInBundle:(NSString *)filename
    //{
    //    int index = -1;
    //    
    //    for (int loop = [filename length] - 1; loop >= 0; loop--)
    //    {
    //        if ([filename characterAtIndex:loop] == '.')
    //        {
    //            index = loop;
    //            break;
    //        }
    //    }
    //    
    //    if (index == -1)
    //    {
    //        return nil;
    //    }
    //    
    //    NSString *filenameWithoutExt = [filename substringToIndex:index];
    //    NSString *ext = [filename substringFromIndex:index + 1];
    //    NSString *path = [[NSBundle mainBundle] pathForResource:filenameWithoutExt ofType:ext];
    //    return path;
    //}

    那么获取Bundle下的Text.txt文件,如下:

    [self filePathInBundle:@"Text.txt"];

  • 相关阅读:
    uniapp上传图片
    vue 路由router传参,刷新丢失问题
    前端网站收藏
    uni.startPullDownRefresh 只能执行一次的解决方案
    移动端,h5页面1px 1像素边框过粗解决方案
    让WebApi支持Namespace
    Ubuntu 14.04下安装GitLab
    Ubuntu学习笔记
    淘宝订单数据转CSV
    修改SQL Server 数据库的编码
  • 原文地址:https://www.cnblogs.com/ftrako/p/2766884.html
Copyright © 2020-2023  润新知