在C#中使用Google翻译

我必须翻译一些文字与谷歌的翻译服务。 我find的所有代码都不起作用。 我想是因为他们改变了他们的服务。 如果有人有工作守则,我会很高兴。

第一个代码示例不起作用的原因是因为页面的布局改变了。 根据该页上的警告:“翻译的string被RegEx接近底部,这当然可以改变,你必须保持最新。” 我认为这应该现在工作,至less直到他们再次改变页面。

public string TranslateText(string input, string languagePair) { string url = String.Format(" http://www.google.com/translate_t?hl=en&ie=UTF8&text= {0}&langpair={1}", input, languagePair); WebClient webClient = new WebClient(); webClient.Encoding = System.Text.Encoding.UTF8; string result = webClient.DownloadString(url); result = result.Substring(result.IndexOf( "<span title= \"") + " <span title= \"".Length); result = result.Substring(result.IndexOf(">") + 1); result = result.Substring(0, result.IndexOf(" </span >")); return result.Trim(); } 

Google翻译工具包,一个开放源代码库http://ggltranslate.codeplex.com/

 Translator gt = new Translator(); /*using cache*/ DemoWriter dw = new DemoWriter(); gt.KeyGen = new SimpleKeyGen(); gt.CacheManager = new SimleCacheManager(); gt.Writer = dw; Translator.TranslatedPost post = gt.GetTranslatedPost("Hello world", LanguageConst.ENGLISH, LanguageConst.CHINESE); Translator.TranslatedPost post2 = gt.GetTranslatedPost("I'm Jeff", LanguageConst.ENGLISH, LanguageConst.CHINESE); this.result.InnerHtml = "<p>" + post.text +post2.text+ "</p>"; dw.WriteToFile(); 

谷歌将在2011年底之前closures翻译API,所以你应该看看替代品!

如果您想翻译您的资源 ,只需下载Visual Studio的MAT(多语言应用程序工具包)。 https://marketplace.visualstudio.com/items?itemName=MultilingualAppToolkit.MultilingualAppToolkit-18308这是在Visual Studio中翻译项目的方法。 https://blogs.msdn.microsoft.com/matdev/