NSString使用编码将字符串转换为NSData

时间:2014-12-10 09:50:09

标签: ios encoding

我的应用中遇到了小问题。

我创建NSMutableURLRequest并将body发送到我的webserice。

jsonRequest = @"{\"s\":\"deón\"}";

NSData *requestData = [NSData dataWithBytes:[jsonRequest UTF8String] length:[jsonRequest length]];

我需要将“ó”符号更改为\ u00F3。

有什么想法吗?

3 个答案:

答案 0 :(得分:1)

如果你想在目标> = iOS5上部署,我会建议你另辟蹊径。它涉及更多步骤,但您可以确定正确的结果,它不易出错。

NSDictionary * jsonDict = @{ @"s" : @"deón" };    
NSData * requestData = [NSJSONSerialization dataWithJSONObject:jsonDict options:0 error:nil];

答案 1 :(得分:0)

转换为UTF-8

    NSData *data = [arrayString dataUsingEncoding:NSUTF8StringEncoding];

答案 2 :(得分:0)

尝试使用此代码,它将接近您的要求

 NSString *jsonRequest = @"{\"s\":\"deón\"}";

 const char *c = [jsonRequest cStringUsingEncoding:NSISOLatin1StringEncoding];