Java 8 – MinguoDate examples

This MinguoDate calendar system is primarily used in Taiwan (Republic of China…)

(ISO) 1912-01-01 = 1-01-01 (Minguo ROC)

To convert the current date to the Minguo date, just subtracts the current year with number 1911, for example

2016 (ISO) - 1911 = 105 (Minguo ROC)

1. LocalDate -> MinguoDate

Review a full example to convert a LocalDate to MinguoDate

TestMinguoDate.java

package com.mkyong.date;

import java.time.LocalDate;
import java.time.chrono.MinguoDate;

public class TestMinguoDate {

    public static void main(String[] args) {

        // LocalDate -> MinguoDate
        System.out.println("Example 1...");        

        LocalDate localDate = LocalDate.of(1912, 1, 1);
        MinguoDate minguo = MinguoDate.from(localDate);
        System.out.println("LocalDate : " + localDate); //1912-01-01
        System.out.println("MinguoDate : " + minguo);   //1-01-01

        // MinguoDate -> LocalDate
        System.out.println("\nExample 2...");

        MinguoDate minguo2 = MinguoDate.of(105, 8, 24);
        //LocalDate localDate = LocalDate.ofEpochDay(minguo2.toEpochDay());
        LocalDate localDate2 = LocalDate.from(minguo2);
        System.out.println("MinguoDate : " + minguo2);   //105-08-24
        System.out.println("LocalDate : " + localDate2); //2016-08-24

    }

}

Output


Example 1...
LocalDate : 1912-01-01
MinguoDate : Minguo ROC 1-01-01

Example 2...
MinguoDate : Minguo ROC 105-08-24
LocalDate : 2016-08-24

References

  1. MinguoDate JavaDoc
  2. Minguo calendar

About the Author

author image
mkyong
Founder of Mkyong.com, love Java and open source stuff. Follow him on Twitter, or befriend him on Facebook or Google Plus. If you like my tutorials, consider make a donation to these charities.

Comments

Leave a Reply

avatar