SORU
21 AĞUSTOS 2008, PERŞEMBE


Orada C sayılarını oluşturmak için kolay bir yoludur#?

C kolay bir yolu var# bir sayı için Ordinals oluşturmak için? Örneğin:

  • 1 1 döndürür
  • 2 döner 2
  • 3 döner 3
  • ...vb

Bu String.Format() ile yapılabilir veya herhangi bir fonksiyon bunu yapmak için vardır?

CEVAP
21 AĞUSTOS 2008, PERŞEMBE


Bu sayfa tüm özel sayısal biçimlendirme kuralları tam listesini verir:

http://msdn.microsoft.com/en-us/library/0c899ak8.aspx

Gördüğünüz gibi, sıra sayıları hakkında orada bir şey yok, bitti Dize kullanarak olamaz.Biçimi. Ancak onun gerçekten bunu yapmak için bir fonksiyon yazmak zor değil.

public static string AddOrdinal(int num)
{
    if( num <= 0 ) return num.ToString();

    switch(num % 100)
    {
        case 11:
        case 12:
        case 13:
            return num   "th";
    }

    switch(num % 10)
    {
        case 1:
            return num   "st";
        case 2:
            return num   "nd";
        case 3:
            return num   "rd";
        default:
            return num   "th";
    }

}

Güncelleme: Teknik olarak sıra sayıları < diye bir şey yok,= 0, yukarıdaki kodu güncelledik. Ayrıca gereksiz Olabilirdi kaldırıldı() yöntemleri.

Unutmayın, bu değil, uluslararasılaşmış. Sıra sayıları diğer dillerde nasıl bilmiyorum.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dan Gately

    Dan Gately

    13 AĞUSTOS 2006
  • GALERNAYA20

    GALERNAYA20

    19 NİSAN 2011
  • RobertDuskin

    RobertDuskin

    12 HAZİRAN 2008