2012-06-19 4 views
0

내 webservice가 줄 바꿈으로 json 문자열을 반환하므로 responseString이 항상 null이라는 문제가 발생합니다.responseString이 null입니다.

NSString *responseString=[[NSString alloc] initWithData:kampanyadata encoding:NSUTF8StringEncoding]; 

NSLog(@"%@",[NSString stringWithFormat:@"responsestring:%@",responseString]); 

---- responsestring : 널 (null)

가 어떻게 JSON 문자열에 새로운 라인 문자를 대체 할 수 있습니까?

+0

SBJSON을 고려한 적이 있습니까? 매력처럼 작동합니다. – Qualcuno

답변

0
NSString *tempString = [tempString stringByReplacingOccurrencesOfString:@"\n" withString:@" "]; 

나는

+0

그 일을 했습니까? @ Dan F – Suhaiyl

+0

아니요, null 값을 얻습니다. – alpersenyurt

+0

http://stackoverflow.com/questions/10578719/json-parser-returns-null 및 http://stackoverflow.com/questions/9424040/ios-nsjson-returning-null이 게시물을 살펴보고 도움이 되길 바랍니다. 아웃. – Suhaiyl

0

당신에게 있는지 kampanyadata가 null는 아니고, 당신이 :) 할 필요가 있다고 생각? 그것은 다음과 같이 NSASCIIStringEncoding를 사용하는 경우는 null 시도는 아닌 경우 :

NSString *responseString=[[NSString alloc] initWithData:kampanyadata encoding:NSASCIIStringEncoding];. 

논외

그리고 BTW NSLog(); 방법을 사용할 수 있도록있는 NSString가 매개 변수로 이미 포맷 취

NSLog(@"responsestring:%@",responseString); 
+0

고마워요.하지만 NSUTF8StringEncoding으로 응답 스트레스를 인코딩해야합니다. 어떻게 할 수 있습니까? – alpersenyurt

+0

데이터가 처음부터 UTF8로 인코딩되지 않았으므로 그것이 작동하지 않는 이유입니다. –

0
soapResults = [[NSString alloc] 
        initWithBytes: [webData mutableBytes] 
        length:[webData length] 
        encoding:NSUTF8StringEncoding]; 

을 이게 잘 작동 나를 위해

0

당신은 일부 NSData있어 , 당신은 그것을 NSString으로 변환하려고했습니다. 이 시점에서 JSON이 관련되어 있지 않습니다. 모든 오류는 JSON 또는 개행 문자와는 아무 관련이 없습니다. 가능성 : 1.받은 NSData는 없습니다. 2.받은 NSData는 UTF-8 형식이 아닙니다.

NSLog 성명은 매우 재미 있습니다. NSLog의 정의를 살펴보십시오. 첫 번째 매개 변수는 형식 문자열입니다. 대신

NSLog(@"%@",[NSString stringWithFormat:@"responsestring:%@",responseString]); 

당신은

NSLog (@"responseString:%@", responseString); 

를 작성해야 그리고 당신은 NSJSONSerializer에 직접를 JSON 문서 를 전달할 수 있습니다. NSString으로 변환 할 필요가 없습니다. 사실, 데이터가 크면 가치있는 메모리를 낭비합니다.

관련 문제