ToUpper() ve ToLower() fonksiyonları ile verilen ifadeyi komple büyük harf veya küçük harfe çevirebiliyoruz ama bazı durumlarda verilen ifadenin sadece ilk harflerini büyük harfe çevirmek gerekebilir. C# ile bunu gerçekleştirmenin iki yolu tercih size kalmış ilk olarak uygulamamızda nasıl yaptığımızı anlatayım daha sonra diğer yolu gösteririm.
Aşağıdaki gibi bir form görünümü ayarladıktan sonra Çevir butonuna bastığımızda yapacaklarımız..
- Girilen metindeki boşlukları silmek (Trim() fonksiyonu ile)
- Girilen metni kelimelere bölmek (Split() fonksyonu ile)
- Kelimelerin ilk harfini alıp büyük harfe çevirmek (Substring ve ToUpper)
- Kelimenin geri kalanını alıp üst adımda büyük harfe çevirdiğimiz ilk harfe eklemek (Substring)
string girilenyazi = textBox1.Text.Trim(); string[] kelimeler; kelimeler = girilenyazi.Split(' '); string sonuc = ""; for (int i = 0; i <= kelimeler.Length - 1; i++) { string ilkharf = kelimeler[i].Substring(0, 1); string sonrakiharfler = kelimeler[i].Substring(1); string düzgün = ilkharf.ToUpper() + sonrakiharfler.ToLower(); sonuc += düzgün + " "; } sonuc = sonuc.TrimEnd(); textBox2.Text = sonuc;
evet bu kodlarla girilen metindeki ilk harfleri C# ile büyük harfe çevirmiş oluyoruz. Ben uygulamada bunu metot haline getirerek istediğimiz yerde istediğimiz kadar kullanabileceğimiz hale çevirdim. Uygulamayı aşağıdan indirebilirsiniz…:
[Yükleme bulunamadı.]
Şimdi sıra geldi ikinci yöntemden bahsetmeye aşağıdaki fonksiyon ilk harfleri büyütme işlemini en pratik şekilde yapar. Her kelimenin ilk harfi büyük, diğer harfleri küçük olacak şekilde verilen metni değiştirir. Kullanıcının bölgesel ayarlarından hangi dili kullandığını öğrenir ve işlemi o dile göre yapar.
private string IlkHarfleriBuyut(string metin) { System.Globalization.CultureInfo cultureInfo = System.Threading.Thread.CurrentThread.CurrentCulture; System.Globalization.TextInfo textInfo = cultureInfo.TextInfo; return textInfo.ToTitleCase(metin); }
çok teşekkürler