로컬에서 json 파일 읽기
4
NSString *path = [self pathForLocationsDataFile];
locationDict = [[NSMutableDictionary alloc] initWithContentsOfFile:path];
// locationDict nil
처음에는 경로 아래에 대응하는 json 파일이 없는 줄 알았는데, 나중에 달려갔다.app 경로를 보면 json 파일이 확실히 존재합니다.
나중에 다음과 같은 코드로 변경, ok
4
NSString *jsonPath = [[NSBundle mainBundle] pathForResource:@"divesite" ofType:@"json"];
NSData *data=[NSData dataWithContentsOfFile:jsonPath];
NSError *error;
id jsonObject=[NSJSONSerialization JSONObjectWithData:data
options:NSJSONReadingAllowFragments
error:&error];
단, 코드에 Dictionary 대상을 만들면 코드 3의 방법으로 로컬 파일에 쓰고 파일에서 읽을 수 있습니다.
4
- (NSString *) pathForDataFile {
NSArray* documentDir = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString* path = nil;
if (documentDir) {
path = [documentDir objectAtIndex:0];
}
return [NSString stringWithFormat:@"%@/%@", path, @"test.bin"];
}
- (void) saveDataToDisk:(NSMutableDictionary*)dict
{
NSString * path = [self pathForDataFile];
if (dict == nil) {
return;
}
[dict writeToFile:path atomically:YES];
}
- (NSMutableDictionary*) loadDataFromDisk
{
NSString * path = [self pathForDataFile];
NSMutableDictionary * rootObject = [[NSMutableDictionary alloc] initWithContentsOfFile:path];
if (rootObject == nil) {
rootObject = [[NSMutableDictionary alloc] initWithCapacity:0];
}
return rootObject;
}
테스트를 보러 가기로 했어요.빈이 어떻게 생겼어요?test.bin이 xml 형식이라니, 어쩐지 사용하더라니.
NSMutableDictionary * rootObject = [[NSMutableDictionary alloc] initWithContentsOfFile:path];
json 형식의 파일을 읽을 수 없습니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.