1-) C# RMOS - yandex ile translate yapma
Install-Package Microsoft.AspNet.WebApi.Client -Version 5.2.7
1. translate.cs ekle
using System;
using System.Net.Http;
using System.Net.Http.Headers;
namespace WindowsFormsApp2
{
public class translate
{
public class Hangidil
{
public string Code { get; set; }
public string Lang { get; set; }
public string[] Text { get; set; }
}
public static string trans(string neyi, string neye, string input)
{
// привет
try
{
HttpClient translateclient = new HttpClient();
translateclient.BaseAddress = new Uri("https://translate.yandex.net/api/v1.5/tr.json/translate");
translateclient.DefaultRequestHeaders.Accept.Add(
new MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage responseTranslate = translateclient.GetAsync("?key=trnsl.1.1.20180625T123523Z.4e36ae1779e244c6.0ca8333981ef219e7036e70496558e051508a06f&text=" + input + "&lang=" + neyi + "-" + neye).Result;
var ceviri = responseTranslate.Content.ReadAsAsync<Hangidil>().Result;
return ceviri.Text[0].ToString();
}
catch (Exception ex)
{
return "" + input;
}
}
public static string YandexTranslate(string dil, string input) // привет
{
try
{
HttpClient client = new HttpClient();
client.BaseAddress = new Uri("https://translate.yandex.net/api/v1.5/tr.json/detect");
client.DefaultRequestHeaders.Accept.Add(
new MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage response = client.GetAsync("?key=trnsl.1.1.20180625T123523Z.4e36ae1779e244c6.0ca8333981ef219e7036e70496558e051508a06f&text=" + input).Result;
var hangidil = response.Content.ReadAsAsync<Hangidil>().Result;
if (hangidil.Lang != "tr")
{
dil = hangidil.Lang;
HttpClient translateclient = new HttpClient();
translateclient.BaseAddress = new Uri("https://translate.yandex.net/api/v1.5/tr.json/translate");
translateclient.DefaultRequestHeaders.Accept.Add(
new MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage responseTranslate = translateclient.GetAsync("?key=trnsl.1.1.20180625T123523Z.4e36ae1779e244c6.0ca8333981ef219e7036e70496558e051508a06f&text=" + input + "&lang=" + dil + "-tr").Result;
var ceviri = responseTranslate.Content.ReadAsAsync<Hangidil>().Result;
return ceviri.Text[0].ToString();
}
else
{
return "" + input;
}
}
catch (Exception ex)
{
return "" + input;
}
}
}
}
2. KULLANIMI
public void cevir()
{
string text = "okul";
textBox1.Text = textBox1.Text+translate.trans("tr","en", text);
textBox1.Text = textBox1.Text+translate.trans("tr","ru", text);
textBox1.Text = textBox1.Text+translate.trans("tr","de", text);
}
2-) AŞAĞIDAKİNE BAKMASAN DA OLUR
memoEdit1.Text = translate.YandexTranslate("en", memoEdit1.Text);
memoEdit1.Text = translate.YandexTranslate("ru", memoEdit1.Text);
memoEdit1.Text = translate.YandexTranslate("de", memoEdit1.Text);
açıklama : ne gelirse gelsin türkçeye çeviriyor yukarıdaki gibi ornek
public static string YandexTranslate(string dil, string input)
{
// привет
try
{
HttpClient client = new HttpClient();
client.BaseAddress = new Uri("https://translate.yandex.net/api/v1.5/tr.json/detect");
client.DefaultRequestHeaders.Accept.Add(
new MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage response = client.GetAsync("?key=trnsl.1.1.20180625T123523Z.4e36ae1779e244c6.0ca8333981ef219e7036e70496558e051508a06f&text=" + input).Result;
var hangidil = response.Content.ReadAsAsync<Hangidil>().Result;
if (hangidil.Lang != "tr")
{
dil = hangidil.Lang;
HttpClient translateclient = new HttpClient();
translateclient.BaseAddress = new Uri("https://translate.yandex.net/api/v1.5/tr.json/translate");
translateclient.DefaultRequestHeaders.Accept.Add(
new MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage responseTranslate = translateclient.GetAsync("?key=trnsl.1.1.20180625T123523Z.4e36ae1779e244c6.0ca8333981ef219e7036e70496558e051508a06f&text=" + input + "&lang=" + dil + "-tr").Result;
var ceviri = responseTranslate.Content.ReadAsAsync<Hangidil>().Result;
return ceviri.Text[0].ToString();
}
else
{
return "" + input;
}
}
catch (Exception ex)
{
return "" + input;
}
}