2017-07-27 63 views
0

解码我不能够给这个编码字符串解码为它的Unicode值: - %5Cu20A8不能够编码的Unicode字符串

NSData *unicodedStringData = 
    [@"%5Cu20A8" dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:NO]; 
    NSString *stringValue = 
    [[NSString alloc] initWithData:unicodedStringData encoding:NSUTF8StringEncoding]; 

我试图NSASCIIStringEncodingNSUnicodeStringEncoding很好,但它不工作。

回答

0

这工作: -

NSString *unicodedString = [[dictMain objectForKey:@"currency"] stringByRemovingPercentEncoding]; 

NSData *unicodedStringData = [unicodedString dataUsingEncoding:NSUTF8StringEncoding]; 

NSString *currencyUnicode = [[NSString alloc] initWithData:unicodedStringData encoding:NSNonLossyASCIIStringEncoding]; 

字符串解码之前只删除百分号转义。

0

只是提高Ashish的答案

NSString *unicodedString = [@"%5Cu20A8" stringByRemovingPercentEncoding]; 

NSData *unicodedStringData = [unicodedString dataUsingEncoding:NSUTF8StringEncoding]; 

NSString *currencyUnicode = [[NSString alloc] initWithData:unicodedStringData encoding:NSNonLossyASCIIStringEncoding]; 
NSLog(@"%@",currencyUnicode); 

输出 - ₨

相关问题