Reputation: 6386
I am trying to parse the below Arabic content
<type id="14">
<data name="title">قافية</data>
</type>
NSString *responseString = [request responseString];
NSData *xmlData=[[request responseString] dataUsingEncoding:NSUTF8StringEncoding];
when print the response i am getting as below
responseString:<?xml version="1.0" encoding="UTF-8" ?><type>
<data name="title">ÙاÙÙØ©</data>
</type>
please see image attached , this is how it displays the content on my ios app
Please let me know how can i fix this
Upvotes: 0
Views: 676
Reputation: 3653
First of all after checking your response string(<?xml version="1.0" encoding="Change here" ?><type>
) it looks me issue in xml encoding type. Tell to your web developer provide proper encoding for arabic content and check it's response in browser if it showing properly after that try various encoding at your side. It will definitely fixed.
Upvotes: 0
Reputation: 15147
Try to use below encoding,
// The following constants are provided by NSString as possible string encodings.
enum {
NSASCIIStringEncoding = 1,
NSNEXTSTEPStringEncoding = 2,
NSJapaneseEUCStringEncoding = 3,
NSUTF8StringEncoding = 4,
NSISOLatin1StringEncoding = 5,
NSSymbolStringEncoding = 6,
NSNonLossyASCIIStringEncoding = 7,
NSShiftJISStringEncoding = 8,
NSISOLatin2StringEncoding = 9,
NSUnicodeStringEncoding = 10,
NSWindowsCP1251StringEncoding = 11,
NSWindowsCP1252StringEncoding = 12,
NSWindowsCP1253StringEncoding = 13,
NSWindowsCP1254StringEncoding = 14,
NSWindowsCP1250StringEncoding = 15,
NSISO2022JPStringEncoding = 21,
NSMacOSRomanStringEncoding = 30,
NSUTF16StringEncoding = NSUnicodeStringEncoding,
NSUTF16BigEndianStringEncoding = 0x90000100,
NSUTF16LittleEndianStringEncoding = 0x94000100,
NSUTF32StringEncoding = 0x8c000100,
NSUTF32BigEndianStringEncoding = 0x98000100,
NSUTF32LittleEndianStringEncoding = 0x9c000100,
NSProprietaryStringEncoding = 65536
};
Upvotes: 1