Merhabalar!
—————————————————————————————-
Dikkat!!!!
Eğer İnternet çıkışınız sabit (static) ip ise, mümkün olduğu kadar bu kodu çok kullanmamaya çalışın. Google aynı ipden çok fazla sorgu tespit ederse, kendisine zarar verilmeye çalışıldığını zannedip, ipnizi engelleyebilir.
—————————————————————————————-
Google Translate‘in nimetlerinden faydalanmak ister misiniz?? Elbette istersiniz, hazırladığınız bir uygulamada, kendi sitenizde, internete çıkışı olan herhangi bir sistemde bundan seve seve faydalanabilirsiniz. Google Translate sayesinde babylon gibi paralı çeviri hizmetlerinin benzerlerini, çok kolay bir şekilde kendiniz hazırlayabilirsiniz.
Benim sayfa tasarımım aşağıdaki gibi oldu.
Şu anda mevcut bulunan diller ve kodları aşağıdadır: (Bunlar Kaynak dil ve Hedef dil tespitinde kullanılıyor. Google’ a resource gönderirken çevrilecek olan kelime veya cümle ve tr|en gibisinden bir ifade gönderiliyor. Bu Türkçeden İngilizceye anlamına gelmekte…)
- Almanca – de
- Arapça – ar
- Bulgarca – bg
- Çekoslavakça – cs
- Çince (Basit) – zh-CN
- Çince (Karmaşık) – zh-TW
- Danca – da
- Fince – fi
- Fransızca – fr
- Hırvatça – hr
- Hintçe – hi
- Hollandaca – nl
- İngilizce – en
- İspanyolca – es
- İsveççe – sv
- İtalyanca – it
- Japonce – ja
- Korece – ko
- Norveççe – no
- Polonca – pl
- Portekizce – pt
- Romanca – ro
- Rusça – ru
- Türkçe – tr
- Yunanca – el
Kodun tasarımı aşağıdaki gibi, bunu kendinize göre düzenleyebilirsiniz.
Tanımlamalar :
protected Label label;
protected TextBox textBox;
protected DropDownList LangFrom;
protected DropDownList LangTo;
protected Button buton;
Butonun Tıklanma Eventı :
void buton_Click(object sender, EventArgs e)
{
try
{
string fromto = LangFrom.SelectedValue + "|" + LangTo.SelectedValue;
string sonuc = TranslateText(textBox.Text, fromto);
label.Text = sonuc;
}
catch (Exception ex)
{
label.Text = ex.Message;
}
}
Translate Metodu :
public string TranslateText(string input, string languagePair)
{
try
{
string url = string.Format("http://www.google.com/translate_t?hl=en&if=UTF8&text={0}&langpair={1}", input, languagePair);
WebClient webClient = new WebClient();
webClient.Encoding = System.Text.Encoding.UTF8;
string result = webClient.DownloadString(url);
int dan = result.IndexOf("id=result_box") + 22;
int da = result.IndexOf("id=result_box") + 500;
result = result.Substring(dan, da - dan);
result = result.Substring(2, result.IndexOf("</div") - 2);
return result;
}
catch (Exception ex)
{
return ex.Message;
}
Dilleri Ekle Metodları :
private void DilleriEkle()
{
DilEkle("Almanca", "de");
DilEkle("Arapça", "ar");
DilEkle("Bulgarca", "bg");
DilEkle("Çekoslavakça", "cs");
DilEkle("Çince (Basit)", "zh-CN");
DilEkle("Çince (Karmaşık)", "zh-TW");
DilEkle("Danca", "da");
DilEkle("Fince", "fi");
DilEkle("Fransızca", "fr");
DilEkle("Hırvatça", "hr");
DilEkle("Hintçe", "hi");
DilEkle("Hollandaca", "nl");
DilEkle("İngilizce", "en");
DilEkle("İspanyolca", "es");
DilEkle("İsveççe", "sv");
DilEkle("İtalyanca", "it");
DilEkle("Japonca", "ja");
DilEkle("Korece", "ko");
DilEkle("Norveççe", "no");
DilEkle("Polonca", "pl");
DilEkle("Portekizce", "pt");
DilEkle("Romanca", "ro");
DilEkle("Rusça", "ru");
DilEkle("Türkçe", "tr");
DilEkle("Yunanca", "el");
}
private void DilEkle(string p, string p_2)
{
LangFrom.Items.Add(p);
LangFrom.Items[LangFrom.Items.Count - 1].Value = p_2;
LangTo.Items.Add(p);
LangTo.Items[LangTo.Items.Count - 1].Value = p_2;
}






