zoukankan      html  css  js  c++  java
  • [iOS]リソースファイルの取得方法

    リソースファイルのパスを取得するためには下記のように実装する。

    --------------------------------------------------------------------------------
    ◯リソースファイルの取得方法
    --------------------------------------------------------------------------------
    ファイル名「Test.db」のパスを取得する。
    NSString *fileName = @"Test.db";
    NSString *resourcePath = [[NSBundle mainBundle] resourcePath];
    NSString *filePath = [resourcePath stringByAppendingPathComponent:fileName];

    ただしローカライズした際に上記の方法ではデフォルトのファイルしか取得できない。
    そのため下記の方法で取得した方が良さげ。

    NSBundle *mainBundle = [NSBundle mainBundle]; // pathForResourceには拡張子を含めない。 NSString *filePath = [mainBundle pathForResource:@"Test" ofType:@"db"];

    ちなみにサブフォルダを作成した場合は下記のようにinDirectoryにサブフォルダ名を指定する。

    ?12 NSBundle *mainBundle = [NSBundle mainBundle]; NSString *filePath = [mainBundle pathForResource:@"Test" ofType:@"db" inDirectory:@"DB"];

    【リソースフォルダにサブフォルダを作る方法】
    リソースファイルをプロジェクトにコピーするときに「Create folder references for any added folders」を選択する。
    プロジェクトエクスプローラー上でフォルダが青くなっていればサブフォルダの作成に成功している。


    --------------------------------------------------------------------------------
    ◯プロジェクトの全リソースファイルを取得する方法
    --------------------------------------------------------------------------------
     
    NSError *error;
    NSString *resourcePath = [[NSBundle mainBundle] resourcePath];
    NSArray *directory = [[NSFileManager defaultManager]contentsOfDirectoryAtPath:resourcePath error:&error];
    for (NSString *str in directory) {     NSLog(@"FileName:%@",str);
    }

  • 相关阅读:
    python安装
    道德准则
    工作职场
    30岁之前
    互联网产品
    项目经理催活指南
    项目中如何找到优先级,以及工作时间安排
    语音行业相关概念
    cookie sessionStorage localStorage 的异同
    数组中map,forEach和for循环的区别
  • 原文地址:https://www.cnblogs.com/vonk/p/4275438.html
Copyright © 2011-2022 走看看