接上篇:json格式的字符串有特殊字符,后台不同意Base64,无法解析怎么办

后台组装报文都是用的制表符\t ,换行\n和\r的任意组合, 返回来的报文在iOS下解析直接报错。

收到字符串后需要把上面三个通通换掉,用下面代码


这些代码生产系统上已运行很多年没有问题
responseString = [responseString stringByReplacingOccurrencesOfString:@"\t" withString:@""];
responseString = [responseString stringByReplacingOccurrencesOfString:@"\r" withString:@""];
responseString = [responseString stringByReplacingOccurrencesOfString:@"\n" withString:@""];
            

换掉后90%的情况都没问题了,

还有一种情况反斜杠\解析问题,正常传输应该是两个反斜杠\\来展示成一个反斜杠\,但有时后台就反一个,导致其与后边字符无法转义,需要用下面的方法再次替换

这些代码生产系统上已运行很多年没有问题
responseString = [responseString stringByReplacingOccurrencesOfString:@"\\" withString:@"\\\\"];

目前这么多,以后遇到再补充

 

 

 

 

 

 

 

 

 

 


版权声明:本文为qq_15509071原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。