수색…


소개

Plist는 iOS 앱에서 데이터를 저장하는 데 사용됩니다. Plist는 배열 및 사전 형태로 데이터를 저장합니다. plist에서 우리는 다음과 같이 데이터를 저장할 수 있습니다 : 1. 응용 프로그램에서 사용되는 정적 데이터. 2. 서버에서 오는 데이터.

예:

1. 응용 프로그램에서 사용할 정적 데이터.

plist에 정적 데이터를 저장하려면 다음 방법을 따르십시오.

a) 새 파일 추가

여기에 이미지 설명을 입력하십시오.

b) 참고 자료에서 Property 목록을 클릭한다.

여기에 이미지 설명을 입력하십시오.

c) propertylist 이름을 지정하면 파일이 (data.plist로 작성됩니다.)

여기에 이미지 설명을 입력하십시오.

d) 배열 및 사전 목록을 다음과 같이 만들 수 있습니다.

여기에 이미지 설명을 입력하십시오.

// 번들에서 plist를 읽고 루트 사전을 가져옵니다.

NSDictionary *dictRoot = [NSDictionary dictionaryWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"Data" ofType:@"plist"]];

// 사전에 사전 배열이 들어 있습니다. // 이제 배열에 사전을 가져옵니다.

NSArray *arrayList = [NSArray arrayWithArray:[dictRoot objectForKey:@"Object1"]];

for(int i=0; i< [arrayList count]; i++)
{
    NSMutableDictionary *details=[arrayList objectAtIndex:i];
}

Plist에서 데이터 저장 및 편집 / 삭제

이미 plist를 만들었습니다. 이 plist는 앱에서 동일하게 유지됩니다. 이 plist의 데이터를 편집하거나 plist에 새 데이터를 추가하거나 plist에서 데이터를 제거하려면이 파일을 변경할 수 없습니다.

이 목적을 위해 당신은 문서 디렉토리에 plist를 저장해야합니다. 문서 디렉토리에 저장된 plist를 편집 할 수 있습니다.

plist를 문서 디렉토리에 다음과 같이 저장하십시오.

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"Data" ofType:@"plist"];

NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfFile:filePath];

NSDictionary *plistDict = dict;

NSFileManager *fileManager = [NSFileManager defaultManager];

NSString *error = nil;

NSData *plistData = [NSPropertyListSerialization dataFromPropertyList:plistDict format:NSPropertyListXMLFormat_v1_0 errorDescription:&error];

if (![fileManager fileExistsAtPath: plistPath]) {
    
    if(plistData)
    {
        [plistData writeToFile:plistPath atomically:YES];
    }
}
else
{
     
}

Plist에서 데이터 수집 :

    NSArray *paths = NSSearchPathForDirectoriesInDomains (NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsPath = [paths objectAtIndex:0];
    NSString *plistPath = [documentsPath stringByAppendingPathComponent:@"Data.plist"];
    NSDictionary *dict = [[NSDictionary alloc] initWithContentsOfFile:plistPath];
    
    NSArray *usersArray = [dict objectForKey:@"Object1"];

제거를 편집하고 요구 사항에 따라 새 데이터를 추가하고 plist를 Document Directory에 다시 저장할 수 있습니다.



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow