解析字符串遇到的問題

有一個問題困擾了我兩天時間,因為現在要做一個聊天回放功能,需要從接口獲取聊天數據并解析。然而接口并沒有,所以找后臺要了一下聊天數據,得到了一個txt文件。

我嘗試把txt文件放到Xcode中解析。

NSString* path = [[NSBundlemainBundle]pathForResource:@"LBChatDemo"ofType:@"json"];

NSData*data = [NSDatadataWithContentsOfFile:path];

NSString*stringdata = [[NSStringalloc]initWithData:dataencoding:NSUTF8StringEncoding];

NSData*contData = [stringdata dataUsingEncoding:NSUTF8StringEncoding];

NSError*myError =nil;

NSDictionary*myData = [NSJSONSerializationJSONObjectWithData:contDataoptions:NSJSONReadingMutableContainerserror:&myError];

然而得到的myData是nil,查看error,內容是

NSDebugDescription=Unescaped control character around character 349.

于是百度,http://bbs.csdn.net/topics/390835989

http://www.cnblogs.com/tanglimei/p/5023937.html

解決原因是,帶有空格等不能解析的特殊字符串

NSString*changeString = [stringdatastringByReplacingOccurrencesOfString:@"\t"withString:@""];

changeString = [changeStringstringByReplacingOccurrencesOfString:@"\n"withString:@""];

changeString = [changeStringstringByReplacingOccurrencesOfString:@"\r"withString:@""];

NSData*contData = [changeStringdataUsingEncoding:NSUTF8StringEncoding];

加上一個替換就ok了

對于AF請求下來的數據:http://blog.csdn.net/u011189158/article/details/43022347

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容