無料の2m文字の変換機能を備えた唯一のAPI以来、AndroidまたはJavaの実用サンプルでは数時間Webを検索しています。しかし、役に立たないのは、私が見つけたものの大半がすでに2017年3月に廃止され、空白の認知サービスに移行して以来、何の役にも立ちません。誰でもその方法を知っていますか?私はコンソールで翻訳を出力するC#で動作するコードを見つけましたが、C#ではなく、自分でJavaに変換することはできません。 TIA。Azureを使用してJavaまたはAndroidでMicrosoft Translator APIを使用する方法
以下はC#の作業コードです。非推奨に関する
using System;
using System.Net.Http;
using System.Threading.Tasks;
namespace AzureSubscriptionKeySample
{
class Program
{
/// Header name used to pass the subscription key to translation service
private const string OcpApimSubscriptionKeyHeader = "Ocp-Apim-Subscription-Key";
/// Url template to make translate call
private const string TranslateUrlTemplate = "http://api.microsofttranslator.com/v2/http.svc/translate?text={0}&from={1}&to={2}&category={3}";
private const string AzureSubscriptionKey = "MyAzureSubscriptionKey"; //Enter here the Key from your Microsoft Translator Text subscription on http://portal.azure.com
static void Main(string[] args)
{
TranslateAsync().Wait();
Console.ReadKey();
}
/// Demonstrates Translate API call using Azure Subscription key authentication.
private static async Task TranslateAsync()
{
try
{
var translateResponse = await TranslateRequest(string.Format(TranslateUrlTemplate, "안녕하세요 친구", "ko", "en", "general"), AzureSubscriptionKey);
var translateResponseContent = await translateResponse.Content.ReadAsStringAsync();
if (translateResponse.IsSuccessStatusCode)
{
Console.WriteLine("Translation result: {0}", translateResponseContent);
}
else
{
Console.Error.WriteLine("Failed to translate. Response: {0}", translateResponseContent);
}
}
catch (Exception ex)
{
Console.Error.WriteLine("Failed to translate. Exception: {0}", ex.Message);
}
}
public static async Task<HttpResponseMessage> TranslateRequest(string url, string azureSubscriptionKey)
{
using (HttpClient client = new HttpClient())
{
client.DefaultRequestHeaders.Add(OcpApimSubscriptionKeyHeader, azureSubscriptionKey);
return await client.GetAsync(url);
}
}
}
}
詳細: https://datamarket.azure.com/dataset/bing/microsofttranslatorspeech
ありがとうございました@Jay Gong。それは円滑に働いた。 –
あなたは、IOUTilsステートメントをsortのOutputStreamに変換する方法を知っています。それは、IOUtilsのためにアンドロイドに移植するのが面倒です。orgでjava.lang.ExceptionInInitializerErrorなどのエラーが表示されます。他にもapache.commons.io.IOUtils.write。 :/私は既に正しいIOUtils jarファイルを持っています。 :/ –
ah nevermind、IOUtilsを手動でハードコーディングして使用しない方法を見つけました。再びBTW。 –