iOS 5: How to convert an Emoji to a unicode character?

Protocole picture Protocole · Dec 26, 2011 · Viewed 49.5k times · Source

I want to convert an Emoji to a unicode character in iOS 5.

For example, converting smiling face with open mouth and cold sweat to \ue415.

I went to NSStringEncoding in NSString Class Reference.

In iOS 4, NSUTF16BigEndianStringEncoding and NSUTF32BigEndianStringEncoding gave me <e415> and <0000e415>, respectively, which are quite close to what I want.

In iOS 5, the results are different. It gaves <d83dde04> and <0001f604>.

How can I get \ue415 for smiling face with open mouth and cold sweat in iOS 5? Thank you.

Answer

deepak picture deepak · Jun 11, 2012

Please try this :

  1. Convert Emoji to unicode

    NSData *data = [strEmo dataUsingEncoding:NSNonLossyASCIIStringEncoding];
    NSString *goodValue = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
    
  2. Very easy to convert unicode to Emoji

    NSData *data = [strEmo dataUsingEncoding:NSUTF8StringEncoding];
    NSString *goodValue = [[NSString alloc] initWithData:data encoding:NSNonLossyASCIIStringEncoding];