NSScanner를 사용하여 쉼표와 구분 된 데이터를 구문 분석합니다. 구현하는 것이 매우 간단했지만 아주 간단한 문제가 있습니다. 비어있는 경우에도 다음 줄을 스캔하고 싶습니다. 지금 내가 가지고있는 문제는 빈 줄이 있으면 건너 뛰고 다음 줄을 읽는 것입니다. 잘못된 데이터가 잘못된 위치에 있기 때문에 구문 분석이 꺼져 있습니다. 다음 코드는 내가 지금 가지고 있습니다 :NSScanner - 다음 줄을 문자열로 스캔
그래서 데이터가과 같이 포맷NSCharacterSet *setToIgnore = [NSCharacterSet characterSetWithCharactersInString:@",\r\n"];
[scanner setCharactersToBeSkipped:setToIgnore];
NSInteger levelID, campaignID;
NSString *title, *about, *gameBoard;
BOOL aTest = [scanner scanInteger:&levelID] && [scanner scanInteger:&campaignID];
aTest = [scanner scanUpToString:@"\r\n" intoString:&title];
aTest = [scanner scanUpToString:@"\r\n" intoString:&about];
aTest = [scanner scanUpToString:@"\r\n" intoString:&gameBoard];
: INT 문자열 문자열
때때로 문자열, 두 번째 문자열을 int로 (약) 비어 있으며 NSScanner 건너 뛰고 gameBoard 문자열을 읽습니다. NSScanner에게 다음 줄을 읽도록 지시하려면 어떻게해야합니까?
가능한 경우 .plist를 NSDictionary로 읽는 것처럼 자동으로 구문 분석 할 수있는 형식을 사용하지 않으시겠습니까? –