1

我在我的项目中处理字符串,其中我将一些数据(字符串)发送到服务并且服务用一些数据(字符串)响应我的 XML。之前我在发送特殊字符(如 &、、、'、 <,>,$,%,(,) 等在字符串中。

然后我在发送之前对字符串进行编码,如下所示:

NSString *str=@"£&@)(;:/-.,?!'"[]{}#%^*+=Â¥$â¬><~||_~<.,?!'m"";
NSString *stringToSend=[str stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

那么发送的数据如下:“ %C2%A3%26%40%29%28%3B%3A%2F-.%2C%3F%21%27%22%5B%5D%7B%7D%23%25 %5E%2A%2B%3D%C2%A5%24%E2%82%AC%3E%3C~%7C%7C_~%3C.%2C%3F%21%27m%22 "

然后服务器根据需要处理数据。

从服务器接收数据时,我进行如下解码:

NSString *strReceived=@"%C2%A3%26%40%29%28%3B%3A%2F-.%2C%3F%21%27%22%5B%5D%7B%7D%23%25%5E%2A%2B%3D%C2%A5%24%E2%82%AC%3E%3C~%7C%7C_~%3C.%2C%3F%21%27m%22";
NSString *str=[str stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

那么收到的数据是:£&@)(;:/-.,?!'"[]{}#%^*+=Â¥$â¬><~||_~<.,?!'m “正如预期的那样。

问题/问题

现在,如果我的字符串包含挪威字符,如 å、ø、Ø、æ 等。响应的字符串包含 (%E5 for å) (%E6 for æ) and (%D8 for Ø) and (%F8 for ø).

在执行“ stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding ”之后,我得到的字符串无效。

有人可以建议如何处理 xml 中收到的所有字符并完美解析它们。请帮助您输入...

提前Tnx。

4

0 回答 0