我使用谷歌翻译多年,效果非常好。现在,Google 已弃用我的版本,现在使用 Google.Cloud.Translation.V2。
Nuget Install-Package Google.Cloud.Translation.V2 -Version 2.0.0 安装,但导致可怕的黄屏,说“找不到”,而且 System.Net.Http 版本冲突。 手动编辑网络和机器配置,等等。
此外,Google 示例引用了未定义命名空间的事物。 我有 Google 凭证 json 文件。
我真的不想在生产环境中更改环境变量。
底线? 我同意数百人的说法,这是一场噩梦。
使用 Nuget,通常很容易安装、引用和运行。 这里不是这样。 谷歌在这方面的入门指南过于冗长,而且至少对我来说是不可能理解的。 这应该是 Nuget、参考、代码。
我想大约有 100 个人有同样的问题。 啊啊啊!
想法?
好的,明白了这一点,虽然说明已经全部列出,但过程却并非如此。
这是针对 C# 的。
您需要一个启用 Google.Cloud.Translation.V2 的 Google 帐户。 启用后,您将需要一个 json 凭据文件。 下载并保存。 这些说明显示了如何使用包管理器控制台来允许它们工作。
在您的翻译类中,添加以下内容:
using Google.Cloud.Translation.V2; //PM> Install-Package Google.Cloud.Translation.V2 -Version 2.0.0
using Google.Apis.Auth.OAuth2; //PM> Install-Package Google.Apis.Oauth2.v2 -Version 1.50.0.1869
然后这个(编码可以是你需要的任何内容):
//usage:
var translated = TranslateText("en", "ar", "Happy Translating");
public string TranslateText(string srclang, string destlang, string trns)
{
var utf8 = new UTF8Encoding(false);
var client = TranslationClient.Create(GoogleCredential.FromFile(path to json credentials file));
var result = client.TranslateText(
text: trns,
targetLanguage: destlang, // ar
sourceLanguage: srclang, // en
model: TranslationModel.Base);
// or model: TranslationModel.NeuralMachineTranslation);
return utf8.GetString(utf8.GetBytes(result.TranslatedText));
}
结果:
saat libur sekolah saya menjaga warung di rmh mulai dari pagi setelah mandi, lalu duduk sambil minum kopi sampai jam 12 untuk makan siang, setelah makan siang saya lanjut jaga warung sambil main Handphone , dan kadang-kadang tidur siang, pada saat magrib saya tutup Warung , lalu di buka lagi jam 7 malam pada malam hari gantian ibuk sya yg menjaga warung sampai jam 9 malam kami pun tutup warung untuk istirahat