iOS 데이터 영구 화

3846 단어
plist 파일
1. plist 파일 이 무엇 입 니까?
plist 전체 이름: property List 속성 목록 파일, plist 는 xml 형식 파일 로 접 두 사 는. plist 이 며 NSArray 와 NADictionary 형식 대상 만 지속 적 으로 사용 할 수 있 습 니 다.
2. plist 파일 의 역할
역할: plist 는 데이터 가 오래 지속 되 는 전문 파일 입 니 다. plist 는 일반적인 상황 에서 사용자 비밀번호, 임시 정보, 프로필 을 저장 하 는 데 사 용 됩 니 다.
3. Plist 파일 특징 (먼저 Xcode 를 plist 파일 로 만 든 다음, 만들어 진 plist 파일 을 통 해 plist 파일 의 특징 을 소개 합 니 다)
Plist    :
1. Plist              (Plist              )
2. Plist         NSString, NSNumber, NSData, NSDate, NSBoolean, NSArray, NSDictionary    

4. Xcode 에서 plist 파일 만 들 기
Plist        xml    
    
1.  File--》New File       
2.iOS    iOS   Resource/Mac    OS X    resource
3.  Resource  Property List   plist  
4.      '+'      

5. plist 파일 읽 기
// plist        (   )
    +(id)arrayWithContentsOfFile:(NSString *)path;
// plist        (   )
    +(id)dictionaryWithContentsOfFile:(NSString *)path

2. 압축 파일 과 반 압축 파일
1. 압축 파일 과 압축 파일 이 무엇 입 니까?
압축 파일: 대상 을 바 이 너 리 데이터 로 바 꾸 어 파일 에 저장 합 니 다.
압축 파일 되 돌리 기: 압축 파일 의 대상 파일 을 원래 메모리 의 대상 으로 읽 습 니 다.
2. 시스템 클래스 대상 의 압축 파일 과 압축 파일
시스템 클래스 압축 파일
//NSKeyedArchiver    
+ (BOOL)archiveRootObject:(id)rootObject toFile:(NSString *)path;
      
//NSKeyedUnarchiver    
+ (id)unarchiveObjectWithFile:(NSString *)path;

3. 압축 파일 주의사항
//     ,    (       )        NSCoding
//        :       ecodeWithCodeer  ,    initWithCoder

4. 코드 인 스 턴 스 (한 배열 을 압축 파일)
//     
    NSString *path = [NSString stringWithFormat:@"%@/friends.data", NSHomeDirectory()];
//   :
    [NSKeyedArchiver archiveRootObject:array toFile:path];
//        
- (void)encodeWithCoder:(NSCoder *)aCoder{
    [aCoder encodeObject:self.nickName forKey:@"nickname"];
    [aCoder encodeObject:self.sex forKey:@"sex"];
}
//    :
    NSArray *readArray = [NSKeyedUnarchiver unarchiveObjectWithFile:path];
//         
- (instancetype)initWithCoder:(NSCoder *)aDecoder{
    if (self = [super init]) {
        self.nickName = [aDecoder decodeObjectForKey:@"nickname"];
        self.sex = [aDecoder decodeObjectForKey:@"sex"];
    }
    return self;
}

3. NSUserDefault
1. NSUserDefaults 는 로그 인 인터페이스의 데이터, 사용자 이름, 비밀번호 등 경량급 로 컬 데 이 터 를 저장 하 는 데 적합 합 니 다. NSUserDefaults 를 사용 하 는 것 이 좋 습 니 다.
다음 에 다시 로그 인 할 때 NSUserDefaults 에서 지난번 로그 인 한 정 보 를 직접 읽 을 수 있 습 니 다.
2. NSUserDefaults 는 NSString, NSNumber, NSDate, NSArray, NSDictionary 만 지원 합 니 다.
3. 인 스 턴 스 (로그 인 인터페이스의 사용자 이름 저장)
(1) 데이터 저장
//      ,          
    NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
    [ud setValue:_usernameTextField.text forKey:@"SaveUserName"];
//       
    [ud synchronize];

(2) 데이터 읽 기
    NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
    NSString *username = [ud valueForKey:@"SaveUserName"];

서류
//     
    NSString *path = [NSString stringWithFormat:@"%@/file.text", NSHomeDirectory()];
//   NSFileManager     
    NSFileManager *fileManager = [NSFileManager defaultManager];
//    
    [fileManager createFileAtPath:path contents:nil attributes:nil];
//   NSFileHandle  
    NSFileHandle *fileHandle = [NSFileHandle fileHandleForUpdatingAtPath:path];
//     
    NSString *string = @"jin tian tian qi zhen bu cuo";
    NSData *dataFromString = [string dataUsingEncoding:NSUTF8StringEncoding];
    [fileHandle writeData:dataFromString];
//     
    //          
    [fileHandle seekToFileOffset:0];
    NSData *dataAll = [fileHandle readDataToEndOfFile];
    NSString *stringFromdataAll = [[NSString alloc]initWithData:dataAll encoding:NSUTF8StringEncoding];

좋은 웹페이지 즐겨찾기