devstory

Le Tutoriel de Java MinguoDate

  1. MinguoDate
  2. MinguoDate Examples
  3. MinguoDate Methods

1. MinguoDate

La classe MinguoDate représente les dates dans le système de calendrier de la Republic of China (ROC), également connu sous le nom de calendrier Minguo. Ce calendrier est utilisé depuis 1912, année de la fondation de la République de Chine. Le 1er janvier 1912 dans le système calendaire ISO équivaut au 1er janvier de l'an 1 dans le calendrier Minguo. Le terme "Minguo" signifie littéralement "république" (chinois traditionnel : 民國 ; chinois simplifié : 民国).
Minguo suit la tradition chinoise d'utiliser le nom de l'ère et de l'année de règne, comme les dynasties chinoises qui l'ont précédé. Cependant, les mois et les jours sont numérotés selon le calendrier Gregorian(ISO). Ce système de calendrier ne dispose que que 2 époques, BEFORE_ROC(Before Republic of China) et ROC(Republic of China) représentant la période avant et après 1912. En fait, la féodalité chinoise a pris fin le 12 février 1912 lorsque Yaozhi le dernier empereur de Chine a été forcé d'abdiquer.
Le calendrier ROC est largement utilisé en République de Chine depuis 1912, y compris dans les premiers documents officiels. Le calendrier ROC est le calendrier officiel utilisé à Taïwan depuis 1945, et également adopté par les communautés chinoises d'outre-mer et taïwanaises. Les chorographies et les recherches historiques publiées en Chine continentale couvrant la période entre 1912 et 1949 utilisent également le calendrier ROC.

2. MinguoDate Examples

Convertir une date ISO en date Minguo et vice versa :
MinguoDate_from_ex1.java
LocalDate localDate = LocalDate.of(2000, 2, 15);
// Convert Minguo Date to ISO Date
MinguoDate minguoDate = MinguoDate.from(localDate);

System.out.printf("ISO Date: %s, Minguo Date: %s%n%n", localDate, minguoDate);  

minguoDate = MinguoDate.of(100, 1, 1);
// Convert ISO Date to Minguo Date
localDate = LocalDate.from(minguoDate);
System.out.printf("Minguo Date: %s, ISO Date: %s%n", minguoDate, localDate);
Output:
ISO Date: 2000-02-15, Minguo Date: Minguo ROC 89-02-15

Minguo Date: Minguo ROC 100-01-01, ISO Date: 2011-01-01
Exemple : Afficher les informations de l'ère d'un objet MinguoDate.
MinguoDate_ex2.java
MinguoDate minguoDate = MinguoDate.of(50, 3, 15);
MinguoEra era =    minguoDate.getEra();

System.out.printf("Minguo Date: %s, ISO Date: %s%n", minguoDate, LocalDate.from(minguoDate));
System.out.println(" > Era: " + era.name() +", value: " + era.getValue());


minguoDate = MinguoDate.of(-10, 3, 15);  
 era =    minguoDate.getEra();
System.out.printf("%nMinguo Date: %s, ISO Date: %s%n", minguoDate, LocalDate.from(minguoDate));
System.out.println(" > Era: " + era.name() +", value: " + era.getValue());
Output:
Minguo Date: Minguo ROC 50-03-15, ISO Date: 1961-03-15
 > Era: ROC, value: 1

Minguo Date: Minguo BEFORE_ROC 11-03-15, ISO Date: 1901-03-15
 > Era: BEFORE_ROC, value: 0
  • Le Tutoriel de Java MinguoEra

3. MinguoDate Methods

Factory methods:
public static MinguoDate now()  

public static MinguoDate now(ZoneId zone)  

public static MinguoDate now(Clock clock)  

public static MinguoDate of(int prolepticYear, int month, int dayOfMonth)

public static MinguoDate from(TemporalAccessor temporal)
Les autres méthodes :
public MinguoChronology getChronology()   
public MinguoEra getEra()   

public int lengthOfMonth()
public ValueRange range(TemporalField field)
public long getLong(TemporalField field)  
public MinguoDate with(TemporalField field, long newValue)
public MinguoDate with(TemporalAdjuster adjuster)  
public MinguoDate plus(TemporalAmount amount)  
public MinguoDate minus(TemporalAmount amount)  
public MinguoDate plus(long amountToAdd, TemporalUnit unit)  
public MinguoDate minus(long amountToAdd, TemporalUnit unit)
public final ChronoLocalDateTime<MinguoDate> atTime(LocalTime localTime)  
public long toEpochDay()  
public ChronoPeriod until(ChronoLocalDate endDate)  
public long until(Temporal endExclusive, TemporalUnit unit)
En règle générale, les méthodes MinguoDate sont similaires aux méthodes LocalDate. Vous pouvez voir l'article sur la classe LocalDate pour avoir plus d'exemples :