IOS UTF-8 Shortcut String

I have a UTF-8 encoding string that I want to display on a shortcut.

When I set a breakpoint and check the variable containing the string, everything looks good. However, when I try to output to a log or to a tag, I get a Latin encoding.

Xcode Screenshot

I have tried almost every sentence on SO and beyond, but I just can't display the string correctly.

Here is my code:

NSString *rawString = [NSString stringWithFormat:@"%@",m_value];

const char *utf8String = [rawString UTF8String];
NSLog (@"%@", [NSString stringWithUTF8String:utf8String]);
NSLog (@"%s", utf8String);
NSLog (@"%@", rawString);

self.resultText.text = [NSString stringWithUTF8String:utf8String];

m_value is an NSString, and in the debug window it also displays the correct encoding.

m_value NSString *  0x006797b0 @"鄧樂愚..."
    NSObject    NSObject    
    isa Class   0x3bddd8f4
    [0] Class   

I am using iOS 6.1 SDK.

+5
source share
4 answers

So, I finally managed to figure it out.

m_value NSString , . , (I.e., ) , NSMacOSRomanStringEncoding.

, TextWrangler , , UTF -8.

, Objective-C, NSString a const char:

const char *macString = [bxr.m_value cStringUsingEncoding:NSMacOSRomanStringEncoding];

NSString:

NSString *utf8String = [[NSString alloc]initWithCString:macString encoding:NSUTF8StringEncoding];

+1 @Vitaly_S @iphonic, . - , ; , Xcode 4.6.1 , , NSLog.

+3

, m_value char, UTF-8, :

- (id)initWithUTF8String:(const char *)bytes

NSString *correctString = [[NSString alloc] initWithUTF8String: m_value];

const char* @, @ NSObject,

+4

khmer , "Hanuman.ttf". , :

`UIFont *font = [UIFont fontWithName:@"Hanuman" size:20.0f];

self.nameLabel.text = [NSString stringWithFormat:@"%@",itemName];
self.nameLabel.font = font;`

set font

result

, , , !

+3

m_value NSData,

self.resultText.text = [[NSString alloc] initWithData:m_value encoding:NSISOLatin1StringEncoding]; 

,

NSASCIIStringEncoding       /* 0..127 only */
NSNEXTSTEPStringEncoding
NSJapaneseEUCStringEncoding
NSUTF8StringEncoding
NSISOLatin1StringEncoding
NSSymbolStringEncoding
NSNonLossyASCIIStringEncoding
NSShiftJISStringEncoding          /* kCFStringEncodingDOSJapanese */
NSISOLatin2StringEncoding
NSUnicodeStringEncoding
NSWindowsCP1251StringEncoding    /* Cyrillic; same as AdobeStandardCyrillic */
NSWindowsCP1252StringEncoding    /* WinLatin1 */
NSWindowsCP1253StringEncoding    /* Greek */
NSWindowsCP1254StringEncoding    /* Turkish */
NSWindowsCP1250StringEncoding   /* WinLatin2 */
NSISO2022JPStringEncoding        /* ISO 2022 Japanese encoding for e-mail */
NSMacOSRomanStringEncoding

NSUTF16StringEncoding      /* An alias for NSUnicodeStringEncoding */

NSUTF16BigEndianStringEncoding          /* NSUTF16StringEncoding encoding with explicit endianness specified */
NSUTF16LittleEndianStringEncoding      /* NSUTF16StringEncoding encoding with explicit endianness specified */

NSUTF32StringEncoding                  
NSUTF32BigEndianStringEncoding          /* NSUTF32StringEncoding encoding with explicit endianness specified */
NSUTF32LittleEndianStringEncoding        /* NSUTF32StringEncoding encoding with explicit endianness specified */
+1
source

All Articles