2010-09-08 91 views
3
NSString *soundURL = [NSString stringWithFormat:@"http://translate.google.com/translate_tts?q=%@&tl=%@",strTextOfFilter,strCodeOfLanguage]; 
     NSLog(@"URL : %@",soundURL); 

這個節目:http://translate.google.com/translate_tts?q=%E4%BD%A0%E5%A5%BD&tl=zh-TW翻譯錯誤

複製網址到Firefox瀏覽器。它是正確的中文翻譯,但對Safari的瀏覽器,它是錯誤的!爲什麼翻譯中文是錯誤的。別人的語言是對的! 請幫助我!

NSData *soundData = [NSData dataWithContentsOfURL:[NSURL URLWithString:soundURL]]; 
    NSLog(@"returnSoundData:%@",[NSURL URLWithString:soundURL]); 
    NSError *err = nil; 
    AVAudioPlayer *player = [[AVAudioPlayer alloc] initWithData:soundData error: &err]; 
    [player play]; 

回答

4

只需在網址的末尾顯示&ie=UTF-8,無論是在Safari中還是在您的代碼中。

http://translate.google.com/translate_tts?q=%E4%BD%A0%E5%A5%BD&tl=zh-TW&ie=UTF-8 

完成這項工作。我猜Google服務器被使用的編碼弄糊塗了。

+0

非常感謝!沒關係!我想成爲你的朋友! – raien 2010-09-08 02:29:29

+0

不客氣:)作爲另一個東亞人,我可以感受到你對編碼的痛苦...... – Yuji 2010-09-08 02:57:57