문제

iPhone 앱을 개발하고 있는데.이 파일을 사용하여 일부 구성 변수를 저장하려고합니다.

내 Xcode에서 그 .plist 파일을 만들 수있는 곳과 액세스 방법 ???

감사합니다,

도움이 되었습니까?

해결책

리소스 폴더에 넣을 것입니다. 그런 다음 이와 같은 것을 사용하여로드하십시오.

NSString *file = [[NSBundle mainBundle] pathForResource:@"TwitterUsers" ofType:@"plist"];
NSArray *Props = [[NSArray alloc] initWithContentsOfFile:file];

여기서 Twitterusers는 Plist 파일의 이름입니다.

PLIST 파일에 키와 값이 포함 된 경우 NSARRAY 대신 두 번째 줄을 NSDictionary로 만듭니다.

다른 팁

Plist 파일을 문서 디렉토리에 저장하려면 앱에 plist 파일을 포함시킨 다음 첫 번째 시작에 문서 디렉토리에 복사해야합니다.

문서 디렉토리에서 파일에 액세스하려면 :

NSArray *paths = 
NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, 
                                    NSUserDomainMask, YES); 
NSString *documentsPath = [paths objectAtIndex:0]; 

// <Application Home>/Documents/foo.plist 
NSString *fooPath = 
[documentsPath stringByAppendingPathComponent:@“foo.plist”];

앱 번들의 리소스 디렉토리에 보관하는 것이 좋지만 프로젝트 창으로 드래그 할 수 있습니다. 그만큼 NSBundle 방법 pathForResource:ofType: 당신이 통과 할 수있는 길을 주어야합니다. NSDictionary'에스 dictionaryWithContentsOfFile:.

편집하다: 죄송합니다, 전체 코드 샘플 (이미 복사 및 붙여 넣은 생각) :

NSString *path = [[NSBundle mainBundle] pathForResource:@"MyConfig" ofType:@"plist"];
NSDictionary *myConfig = [NSDictionary dictionaryWithContentsOfFile:path];

편집하다 나에게 "구성 변수"가 불변 할 수 없을 수도 있습니다. 이 경우이 답을 무시하십시오.

나는 당신이 사용하는 것이 좋습니다 NSUSERDEFAULTS 자체 시스템을 굴리는 대신 구성 변수를 저장합니다.

수정하는 경우 a .plist 애플리케이션 번들 내부에는 번들의 서명을 무효화 할 위험이 있지만 잘 끝나지 않습니다.

직접 저장하고 수정 해야하는 경우 .plist, 그것을 보관하십시오 Documents 응용 프로그램이 다운로드하고 생성하는 모든 것을 저장 해야하는 디렉토리도 참조하십시오. 파일 및 데이터 관리 그리고 NSFILEMANAGER.

기본적으로 프로젝트에 PLIST를 어디에서나 포함 시켰는 경우 (자원 또는 기타에 따라) Xcode는 위에서 언급 한 상태에서 얻을 수있는 애플리케이션 번들에 복사합니다. pathForResource 전화. 자원이없는 곳에 그룹화를 선호 할 수도 있다고 언급했을 것입니다 ...

SQLITE BOOK 예제를 찾을 수 있습니다 ..... SILTE 데이터 파일은 디렉토리 '문서'에 저장되었습니다 .... PRCESS를 알게 될 것입니다.

  1. 왜 번들이 무효화됩니까?

  2. 리소스 폴더 의이 파일이 문서 폴더의 파일과 같은 iTunes에서 백업됩니까?

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top