[英]responseString is null
我的網絡服務返回帶有新行的json字符串,因此它引起問題,即responseString始終為null。
NSString *responseString=[[NSString alloc] initWithData:kampanyadata encoding:NSUTF8StringEncoding];
NSLog(@"%@",[NSString stringWithFormat:@"responsestring:%@",responseString]);
---- responsestring:null
如何替換JSON字符串中的換行符?
NSString *tempString = [tempString stringByReplacingOccurrencesOfString:@"\n" withString:@" "];
我認為您需要這樣做:)
您確定kampanyadata不為null嗎? 如果不為null,請嘗試使用NSASCIIStringEncoding
如下所示:
NSString *responseString=[[NSString alloc] initWithData:kampanyadata encoding:NSASCIIStringEncoding];.
題外話
然后通過NSLog();
方法采用已經格式化的NSString作為參數,因此您可以使用:
NSLog(@"responsestring:%@",responseString);
soapResults = [[NSString alloc]
initWithBytes: [webData mutableBytes]
length:[webData length]
encoding:NSUTF8StringEncoding];
試試這個對我來說很好
您獲得了一些NSData,然后嘗試將其轉換為NSString。 此時不涉及JSON。 任何錯誤都與JSON或換行符無關。 可能性:1.您收到的NSData為零。 2.您收到的NSData不是UTF-8格式。
您的NSLog語句很有趣。 查看NSLog的定義-第一個參數是格式字符串。 代替
NSLog(@"%@",[NSString stringWithFormat:@"responsestring:%@",responseString]);
你應該寫
NSLog (@"responseString:%@", responseString);
您可以將JSON文檔直接傳遞給NSJSONSerializer。 無需將其轉換為NSString。 實際上,如果數據很大,那只會浪費寶貴的內存。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.