如何在objective-c中对法语字符进行编码?
我正在用谷歌翻译法语,一些结果的字母作为一些符号返回给我。经过一些研究,我知道这是因为编码,但我需要一些帮助,因为我找不到足够的信息 这是我的密码:如何在objective-c中对法语字符进行编码?,objective-c,character-encoding,Objective C,Character Encoding,我正在用谷歌翻译法语,一些结果的字母作为一些符号返回给我。经过一些研究,我知道这是因为编码,但我需要一些帮助,因为我找不到足够的信息 这是我的密码: - (void)performTranslation:(NSString *) inputStr { NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSString *outLang = [defaults objectForKey:@"OutLan
- (void)performTranslation:(NSString *) inputStr {
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *outLang = [defaults objectForKey:@"OutLanguage"];
NSString *inLang=@"tr";
NSString *textEscaped = [inputStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSLog(@"textEscaped=%@",textEscaped);
NSString *url = [NSString
stringWithFormat:@"https://www.googleapis.com/language/translate/v2? key=AIzaSyAx5dSiKm1J-qkc0qKZpYnWhgFjYpoC84g&q=%@&source=%@&target=%@",textEscaped, inLang, outLang];
NSLog(@"REQ : -%@-", url);
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:url]];
[[NSURLConnection alloc] initWithRequest:request delegate:self];
}
}
我收到
transfert d';银币
但我希望能转让银币。我想这封信需要不同的编码是一个html或xml实体。您接收的数据可能是xml编码的。如果是这种情况,则需要使用适当的XML解析器解析响应。我猜您正在手动解析所需的数据。您可能不需要NSUTF8StringEncoding
。试着从文档中找出它的真正含义,如果你找不到它,试试UTF16。请告诉我们有什么问题。给我们举一个你得到的坏数据的例子。@mike Weller举个例子,我需要得到“transfert d'argent”,但我得到的是类似“transfert d';argent”的东西。我想这封d'字母需要不同的编码。谢谢你的回复,我在回答时编辑了我的代码,我就是这样解析的。走错了吗?
- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {
NSLog(@"didReceiveResponse");
}
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
NSLog(@"didReceiveData=%@",data);
NSString *result = [[[NSString alloc] initWithData:data
encoding:NSUTF8StringEncoding] autorelease];
NSLog(@"OUTPUT : %@", result);