2012-10-18 12 views
7

JodaTime bu işlevi sağlıyor mu? Dokümanlarda bulamıyorum, belki bir şeyleri özledim? Formatting API doc böyle bir özellik göstermiyor.JodaTime: 1, 2, 3, vb. Ile biçimlendirme tarihi gün

Eğer değilse, sonuç dizesini ayrıştırın ve güne karşılık gelecek şekilde st, nd, th ekleyiniz mi?

Hackish gibi gözüküyor, JodaTime gibi kapsamlı ve harika bir kütüphane düşünün (bu rock ;-)), bu görünüşte basit bir özellik sağlayacaktır.

cevap

3

JodaTime'ın üzerine kurulu olan PrettyTime'a bir göz atın.

+3

+1 Ancak, adamım, bu projeyi kapıdan çıkarmaya çalışıyorum, bana daha fazla deps atmayın ;-) – virtualeyes

14

Joda bunu doğrudan uygulamıyorken, harici bir kütüphaneye ihtiyacınız yoktur, sadece bunun gibi basit bir uygulamaya başvurunuz. MHaris cevaben

/** 
* Returns the correct suffix for the last digit (1st, 2nd, .. , 13th, .. , 23rd) 
*/ 
public static String getLastDigitSufix(int number) { 
    switch((number<20) ? number : number%10) { 
     case 1 : return "st"; 
     case 2 : return "nd"; 
     case 3 : return "rd"; 
     default : return "th"; 
    } 
} 

, yukarıdaki kod English Ordinals in Wikipedia göre doğru bakar,

for (int i = 0; i < 99; i++) { 
    System.out.print(i + getLastDigitSufix(i) + ", "); 
} 

0th, 1st, 2nd, 3rd, 4th, 5th, 6th, 7th, 8th, 9th, 
10th, 11th, 12th, 13th, 14th, 15th, 16th, 17th, 18th, 19th, 
20th, 21st, 22nd, 23rd, 24th, 25th, 26th, 27th, 28th, 29th, 
30th, 31st, 32nd, 33rd, 34th, 35th, 36th, 37th, 38th, 39th, 
40th, 41st, 42nd, 43rd, 44th, 45th, 46th, 47th, 48th, 49th, 
50th, 51st, 52nd, 53rd, 54th, 55th, 56th, 57th, 58th, 59th, 
60th, 61st, 62nd, 63rd, 64th, 65th, 66th, 67th, 68th, 69th, 
70th, 71st, 72nd, 73rd, 74th, 75th, 76th, 77th, 78th, 79th, 
80th, 81st, 82nd, 83rd, 84th, 85th, 86th, 87th, 88th, 89th, 
90th, 91st, 92nd, 93rd, 94th, 95th, 96th, 97th, 98th, 99th 

hangisi üretir.

+0

Basit uygulama yanlış olduğu için downvotedilmiş olabilirsiniz - bu kod snippet'i "11st "," 12. "ve" 13 "", hepsi "th" son ekine sahip olmalıdır. Gönderiyi düzenlerdim, ancak sıra görünüşte dolu. – MHarris

+1

@MHarris düzenlemediğine sevindim. İyi görünüyor, kendiniz için kontrol edin! :) – Frankie

+0

Oh, çok güzel! Harika görünüyor, benim kötü. :-) – MHarris