1

私は奇妙な問題を抱えています。

アプリケーションのメインバンドルから plist ファイルを読み取ることができません

ファイルは「コピーバンドルリソース」にあります

しかしなぜか読めない

ここにコードがあります

NSLog(@"%@",[[NSBundle mainBundle] pathForResource:@"8chk" ofType:@"plist"]);

それは常に (null) を出力します

ここにスクリーンショットがあります

ここに画像の説明を入力

誰が何が起こっているのか教えてもらえますか?

4

5 に答える 5

2

8chk.plist残念ながら、あなたはこれをターゲットに追加していません。

于 2013-07-10T14:31:11.043 に答える
2

プロジェクトにplistファイルを再度ドラッグアンドドロップします。プロジェクトにファイルを追加するときにチェックボックスにチェックマークを付けてください。

次に、このコードを使用してアクセス可能にし、plist から値を読み取ります

NSString *path = [[NSBundle mainBundle] pathForResource: @"YourPLIST" ofType: @"plist"]; 
NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile: path];
[id obj = [dict objectForKey: @"YourKey"]; 

また

// Reads the value of the custom key you added to the Info.plist
NSString *value = [mainBundle objectForInfoDictionaryKey:@"key"];

//Log the value
NSLog(@"Value = %@", value);
于 2013-07-10T15:14:58.977 に答える
1
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"Info.plist"];

これはうまくいくかもしれません。plistをターゲットにコピーしてルートディレクトリに配置してください。また、アプリのデフォルトのplistが保持されている場所にplistファイルを配置することもできます。

:)

于 2013-07-11T09:35:35.347 に答える
0

Shoeb Amin さん、plist ファイルが Target->Copy Bundle リソース内に追加されていることを確認してください

于 2013-07-10T14:10:53.523 に答える
0

あなたの道は間違っています。プロジェクトナビゲーターが正しいツリーを表示する場合ではなく、copy bundle resource単に読む必要があります。8chk.plist8chk.plist ..in resources/8chk

于 2013-07-10T14:26:35.470 に答える