Google Translate Kullanarak .NeT de Dil Çevrimi

Pazartesi, Mart 2nd, 2009 @ 22:27

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.

dil1

dil2

dil3

Ş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…)

  1. Almanca – de
  2. Arapça – ar
  3. Bulgarca – bg
  4. Çekoslavakça – cs
  5. Çince (Basit) – zh-CN
  6. Çince (Karmaşık) – zh-TW
  7. Danca – da
  8. Fince – fi
  9. Fransızca – fr
  10. Hırvatça – hr
  11. Hintçe – hi
  12. Hollandaca – nl
  13. İngilizce – en
  14. İspanyolca – es
  15. İsveççe – sv
  16. İtalyanca – it
  17. Japonce – ja
  18. Korece – ko
  19. Norveççe – no
  20. Polonca – pl
  21. Portekizce – pt
  22. Romanca – ro
  23. Rusça – ru
  24. Türkçe – tr
  25. 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;
        }

İlişkili Yazılar :

  1. Web Servis Kullanarak Güncel Hava Durumunun Gösterilmesi
  2. Bir SPList’in Tüm Item’larını Silmek
  3. How To Move Selected ListItems to Up in ListBox
  4. How To Move Selected ListItems to Down in ListBox
  5. Google Wave
  6. XML ve XSLT Dosyalarını İşleyerek Ekrana HTML Çıktısı Veren ASPX Sayfası
  7. Google Chrome
  8. Google a Sitenizi Kaydedin !!
  9. Google Karşılaştırma Önerileri
  10. Sharepoint: “Bir listin tam adresini alma” || “How to get a list’s full URL”

Tags: , , ,
Posted in .NeT 2008, Sharepoint | 6 Comments »

Önceki Yazı << Sonraki Yazı >>

6 Responses to “Google Translate Kullanarak .NeT de Dil Çevrimi”

  1. çok iyi ollur diyor ki:

    vallahi bunun sayesinde dil poroplemim kalmıyor

  2. cavit diyor ki:

    Slm Eline sağlık güzel bi uygulama yapmıssın da devamını neden yazmamıssın en son substrig ederken yarıda bıkramıssın ben yaptım gerci.yine de sağol eline sağlıkkk

  3. Mehmet AYDIN diyor ki:

    ben aslında devamını getirmiştim ama :) bi bakayım gösteriminde bir hata olabilir, yoksa da eklerim. Uyarı için teşekkürler…

  4. Mehmet AYDIN diyor ki:

    bir div tagından dolayı problem olmuş gösteriminde :)
    Düzeltmeyi yaptım.

  5. Mert diyor ki:

    teşekkürler faydalı döküman olmuş..

  6. Mehmet AYDIN diyor ki:

    yararlı olduğuna sevindim,

Leave a Reply



Yeni yorumları e-posta aracılığıyla bana bildir. Ayrıca yorum yapmadan da abone olabilirsiniz.