NSString을 NSString으로 다중 바이트 인코딩으로 변환하는 프로그램을 작성하고 있습니다. 변환 자체는 쉽지만 문제는 NSData가 개별적으로 도착한다는 것입니다 (데이터가 순서대로 도착했습니다). 데이터는 8 비트 문자는 확인하지만 멀티 바이트 문자열 데이터를 분석하고있어이 포함 된 경우 그것은별도로 도착하는 NSData에서 NSString 가져 오기
- (void) dataArrived:(NSData*) data{
NSString* mystr = [[[NSString alloc] initWithData:data encoding:NSShiftJISStringEncoding] autorelease];
// I want to parse string here and show some view as it arrives.
}
좋아한다. 그래서 NSData를 머리글에서 NSString으로 변환하고 다음에 dataArrived를 호출하여 유효하지 않은 바이트를 보관합니다 (마지막 1 바이트는 SJIS 문자가 1 또는 2 바이트이므로 NSShiftJISStringEncoding의 유효하지 않은 바이트로 남을 수 있음).
이 작업을 수행하는 데 유용한 방법이나 기능이 있는지 궁금합니다. 이상적인 메서드는 NSData 및 인코딩을 취하여 NSData에서 잘못된 바이트 시퀀스가있는 위치를 반환 할 수 있습니다.
내 답변이 귀하의 질문에 대답하지 않습니까? ;-) –