Max*_*rai 54 c# google-translate
我必须使用Google的翻译服务翻译一些文字.我发现的所有代码都不起作用.我想因为他们改变了他们的服务.如果有人有工作代码,我会很高兴.
Jam*_*ell 61
看看这是否适合你
谷歌语言的API换DOTNET
http://code.google.com/p/google-language-api-for-dotnet/
谷歌翻译器
http://www.codeproject.com/KB/IP/GoogleTranslator.aspx
使用Google Api翻译您的文字
http://blogs.msdn.com/shahpiyush/archive/2007/06/09/3188246.aspx
从C#调用Google Ajax语言API进行翻译和语言检测
C#中的翻译Web服务
http://www.codeproject.com/KB/cpp/translation.aspx
使用.NET的Google翻译API
Sha*_*mer 22
第一个代码示例不起作用的原因是因为页面布局发生了变化.根据该页面上的警告:"翻译的字符串由靠近底部的RegEx提取.这当然可以改变,你必须保持最新状态." 我认为这应该适用于现在,至少在他们再次更改页面之前.
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();
}
我发现此代码对我有用:
public String Translate(String word)
{
var toLanguage = "en";//English
var fromLanguage = "de";//Deutsch
var url = $"https://translate.googleapis.com/translate_a/single?client=gtx&sl={fromLanguage}&tl={toLanguage}&dt=t&q={HttpUtility.UrlEncode(word)}";
var webClient = new WebClient
{
Encoding = System.Text.Encoding.UTF8
};
var result = webClient.DownloadString(url);
try
{
result = result.Substring(4, result.IndexOf("\"", 4, StringComparison.Ordinal) - 4);
return result;
}
catch
{
return "Error";
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
113916 次 |
最近记录: |