我正在从iphone发送文本到服务器进行处理。 该文字包含一些西班牙文字符,例如,áéíúúñ¿¿¡ª
发送时,我使用NSUTF8StringEncoding对其进行编码 服务器端也使用UTF8编码对其进行解码。
但服务器端将其解码为???????
如果有人遇到过这个问题以及如何解决这个问题,请告诉我?
感谢。
答案 0 :(得分:1)
我找到了解决方案。
由于这是一个帖子数据,我不得不逃避特殊字符。
stringByAddingPercentEscapesUsingEncoding:
似乎没有逃脱所有特殊字符。我用“+”字符来面对这个问题,它被一个空格所取代。
我觉得同样的事情发生在西班牙语角色没有正确转义,所以我手动更换它并且它起作用。
以下是一个例子。我为所有角色写了这个
escapedString = [escapedString stringByReplacingOccurrencesOfString:@"À" withString:@"%C0"];
escapedString = [escapedString stringByReplacingOccurrencesOfString:@"Á" withString:@"%C1"];
escapedString = [escapedString stringByReplacingOccurrencesOfString:@"Â" withString:@"%C2"];
escapedString = [escapedString stringByReplacingOccurrencesOfString:@"Ã" withString:@"%C3"];
escapedString = [escapedString stringByReplacingOccurrencesOfString:@"Ä" withString:@"%C4"];
感谢xj1200和saadnib对此的关注。我真的很感激。如果你们找到任何其他更好的解决方案,请发布。
答案 1 :(得分:0)
我认为您可以使用Google Toolbox for Mac来编码这些字符。请参阅文件GTMNSString +
http://code.google.com/p/google-toolbox-for-mac/source/browse/trunk/?r=27#trunk%2FFoundation