📜  Übersetzer - C# (1)

📅  最后修改于: 2023-12-03 15:35:33.064000             🧑  作者: Mango

Übersetzer - C#

介绍

Übersetzer - C# 是一款基于 .NET 平台开发的翻译工具。它支持多种翻译服务,并提供了简单易用的 API 接口,可在代码中灵活调用。

目前,Übersetzer - C# 支持以下翻译服务:

  • 百度翻译
  • Google 翻译
  • Youdao 翻译
  • 彩云小译

开发者可以通过简单的配置,轻松地集成这些翻译服务到自己的应用程序中。

安装和配置
NuGet 安装

运行以下命令,使用 NuGet 包管理器安装 Übersetzer - C#:

Install-Package Uebersetzer
配置翻译服务

在使用 Übersetzer - C# 之前,需要先配置翻译服务。配置信息可存储在各种配置文件、数据库或其他位置。以下为使用 AppSettings 存储配置信息的示例:

<configuration>
  <appSettings>
    <add key="BaiduApiKey" value="YourBaiduApiKey" />
    <add key="BaiduSecretKey" value="YourBaiduSecretKey" />
    <add key="GoogleApiKey" value="YourGoogleApiKey" />
    <add key="YoudaoApiKey" value="YourYoudaoApiKey" />
    <add key="YoudaoSecretKey" value="YourYoudaoSecretKey" />
    <add key="CaiyunApiKey" value="YourCaiyunApiKey" />
  </appSettings>
</configuration>
使用示例
初始化

首先,在代码中初始化翻译服务。以下为初始化百度翻译服务的示例:

using Uebersetzer.Baidu;

var baiduApiKey = ConfigurationManager.AppSettings["BaiduApiKey"];
var baiduSecretKey = ConfigurationManager.AppSettings["BaiduSecretKey"];
var baiduTranslator = new BaiduTranslator(baiduApiKey, baiduSecretKey);

获取其他翻译服务的示例:

// Google 翻译
using Uebersetzer.Google;

var googleApiKey = ConfigurationManager.AppSettings["GoogleApiKey"];
var googleTranslator = new GoogleTranslator(googleApiKey);

// Youdao 翻译
using Uebersetzer.Youdao;

var youdaoApiKey = ConfigurationManager.AppSettings["YoudaoApiKey"];
var youdaoSecretKey = ConfigurationManager.AppSettings["YoudaoSecretKey"];
var youdaoTranslator = new YoudaoTranslator(youdaoApiKey, youdaoSecretKey);

// 彩云小译
using Uebersetzer.Caiyun;

var caiyunApiKey = ConfigurationManager.AppSettings["CaiyunApiKey"];
var caiyunTranslator = new CaiyunTranslator(caiyunApiKey);
翻译文本

使用 initialized 翻译服务的 Translate 方法翻译文本。以下为使用百度翻译服务翻译英文为中文的示例:

var result = baiduTranslator.Translate("Hello, world!", "en", "zh");
Console.WriteLine(result);
翻译文件

使用 initialized 翻译服务的 TranslateFile 方法翻译文件。以下为使用百度翻译服务翻译文本文件的示例:

var inFile = "input.txt";
var outFile = "output.txt";
var result = baiduTranslator.TranslateFile(inFile, outFile, "en", "zh");
Console.WriteLine(result);
使用 API

Übersetzer - C# 还提供了简单易用的 API 接口,开发者可以直接调用 API 实现翻译功能。以下为在 Web API 中使用 Übersetzer - C# 的示例:

[HttpGet]
[Route("api/translate")]
public IHttpActionResult Translate(string text, string from, string to, string provider)
{
    ITranslator translator;
    switch (provider?.ToLower())
    {
        case "baidu":
            var baiduApiKey = ConfigurationManager.AppSettings["BaiduApiKey"];
            var baiduSecretKey = ConfigurationManager.AppSettings["BaiduSecretKey"];
            translator = new BaiduTranslator(baiduApiKey, baiduSecretKey);
            break;
        case "google":
            var googleApiKey = ConfigurationManager.AppSettings["GoogleApiKey"];
            translator = new GoogleTranslator(googleApiKey);
            break;
        case "youdao":
            var youdaoApiKey = ConfigurationManager.AppSettings["YoudaoApiKey"];
            var youdaoSecretKey = ConfigurationManager.AppSettings["YoudaoSecretKey"];
            translator = new YoudaoTranslator(youdaoApiKey, youdaoSecretKey);
            break;
        case "caiyun":
            var caiyunApiKey = ConfigurationManager.AppSettings["CaiyunApiKey"];
            translator = new CaiyunTranslator(caiyunApiKey);
            break;
        default:
            return BadRequest("Invalid provider");
    }

    var result = translator.Translate(text, from, to);
    return Ok(result);
}
总结

Übersetzer - C# 是一款功能强大、易用的翻译工具。它支持多种翻译服务,并提供了简单易用的 API 接口,可在代码中灵活调用。集成和使用都非常简单,开发者可以根据自己的需求灵活选用和配置翻译服务。