Come pubblicare una stringa con caratteri speciali e Thai Language usando l’analisi XML nell’Objective C?

Sono nuovo in iOS e sto affrontando un problema riguardante la pubblicazione di string contenente caratteri speciali.

Il mio codice è simile a DidFinishLoading:

NSXMLParser *myNSXMLParserPostObj=[[NSXMLParser alloc]initWithData:myNSMDataPostFromServer]; myNSXMLParserPostObj.delegate=self; [myNSXMLParserPostObj parse]; NSLog(@"%@",myNSXMLParserPostObj.parserError); NSString *responseStringWithEncoded = [[NSString alloc] initWithData: myNSMDataPostFromServer encoding:NSUTF8StringEncoding]; //NSLog(@"Response from Server : %@", responseStringWithEncoded); NSAttributedString * attrStr = [[NSAttributedString alloc] initWithData:[responseStringWithEncoded dataUsingEncoding:NSUnicodeStringEncoding] options:@{ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType } documentAttributes:nil error:nil]; serverResponse.attributedText = attrStr; NSString *Str =serverResponse.text; NSLog(@"Server Response =%@",Str); UIAlertView *alert3 = [[UIAlertView alloc] initWithTitle:@"Success" message:@"Complaint Added Successfully" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil]; 

Per ottenere dati dal servizio web sto usando un codice come questo:

 loginStatusZone = [[NSString alloc] initWithBytes: [myNSMDatazoneFromServer mutableBytes] length:[myNSMDatazoneFromServer length] encoding:NSUTF8StringEncoding]; NSLog(@"loginStatus =%@",loginStatusZone); NSError *parseError = nil; NSDictionary *xmlDictionary = [XMLReader dictionaryForXMLString:loginStatusZone error:&parseError]; NSLog(@"JSON DICTIONARY = %@",xmlDictionary); recordResultZone = [xmlDictionary[@"success"] integerValue]; NSLog(@"Success: %ld",(long)recordResultZone); NSDictionary* Address=[xmlDictionary objectForKey:@"soap:Envelope"]; NSLog(@"Address Dict = %@",Address); NSDictionary *new =[Address objectForKey:@"soap:Body"]; NSLog(@"NEW DICT =%@",new); NSDictionary *LoginResponse=[new objectForKey:@"FillZonesNewResponse"]; NSLog(@"Login Response DICT =%@",LoginResponse); NSDictionary *LoginResult=[LoginResponse objectForKey:@"FillZonesNewResult"]; NSLog(@"Login Result =%@",LoginResult); if(LoginResult.count>0) { NSLog(@"Login Result = %@",LoginResult); NSLog(@"Login Result Dict =%@",LoginResult); NSString *teststr =[[NSString alloc] init]; teststr =[LoginResult objectForKey:@"text"]; NSLog(@"Test String Value =%@",teststr); NSString *string = [LoginResult valueForKey:@"text"]; NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding]; zoneresponsedict = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil]; idzonearray=[[NSMutableArray alloc]init]; idzonearray=[zoneresponsedict valueForKey:@"ZoneId"]; NSLog(@"Result Array =%@",idzonearray); shortnamezonearray=[[NSMutableArray alloc]init]; shortnamezonearray=[zoneresponsedict valueForKey:@"ZoneName"]; NSLog(@"Result Array =%@",shortnamezonearray); } 

Se aggiungo un carattere speciale, mi mostra errore come

 Domain=NSXMLParserErrorDomain Code=111 "The operation couldn't be completed. (NSXMLParserErrorDomain error 111.)" 

Come posso pubblicare dati con caratteri speciali.

Sto aggiungendo qualcosa di simile in lingua tailandese

inserisci la descrizione dell'immagine qui

Ma sto ottenendo questo:

inserisci la descrizione dell'immagine qui

Lo stesso con l’hindi

inserisci la descrizione dell'immagine qui

L’output sta diventando così

inserisci la descrizione dell'immagine qui

Ma quando qualcuno aggiunge la lingua tailandese usando Android o il sito web ottengo il testo corretto in tailandese. L’unico problema è con questo codice postale.

Dovrai scrivere il & <> come segue, proprio come in un file html:

 & < >