Program Tip

NSDictionary를 NSString으로 변환

programtip 2020. 12. 13. 10:27
반응형

NSDictionary를 NSString으로 변환


테스트를 위해 NSDictionary의 내용을 NSString에 넣으려고하는데 이것을 달성하는 방법을 모릅니다. 가능합니까? 그렇다면 어떻게 그런 일을할까요?

내가이 작업을 수행하는 이유는 장치에서 디버거를 실행하지 않고 NSDicitonary의 내용을 확인해야하기 때문입니다. ios의 멀티 태스킹 바에서 실행중인 앱을 삭제해야하므로 사전에 저장중인 값을 나중에 사용할 수 있는지 확인할 수 있습니다.


[aDictionary description]을 호출하거나 형식 문자열이 필요한 모든 곳에서 % @를 사용하여 사전을 표시 할 수 있습니다.

[NSString stringWithFormat:@"my dictionary is %@", aDictionary];

또는

NSLog(@"My dictionary is %@", aDictionary);

위의 솔루션은 사전을 문자열로만 변환하지만 해당 문자열을 사전으로 다시 변환 할 수는 없습니다. 이를 위해 더 나은 방법입니다.

문자열로 변환

NSError * err;
NSData * jsonData = [NSJSONSerialization  dataWithJSONObject:yourDictionary options:0 error:&err];
NSString * myString = [[NSString alloc] initWithData:jsonData   encoding:NSUTF8StringEncoding];
NSLog(@"%@",myString);

사전으로 다시 변환

NSError * err;
NSData *data =[myString dataUsingEncoding:NSUTF8StringEncoding];
NSDictionary * response;
if(data!=nil){
 response = (NSDictionary *)[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&err];
}

당신은 사용할 수 있습니다 description상속 방법 NSDictionary에서를 NSObject, 또는 사용자 정의 메소드를 작성하는 형식을 NSDictionary원하는대로.

참고 URL : https://stackoverflow.com/questions/10116012/convert-nsdictionary-to-nsstring

반응형