Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8039969

Old Korean Calendar conflicts with Host Locale

    Details

      Description


      The Host Locale Provider can retrieve OS's locale definitions including Era
      name. If the Historical Korean calendar is used, Era name and year
      representation have a conflict, because Java 8 doesn't support the calendar.

      Korean Windows 7 and 8 can use the historical Korean calendar, "Dangi" Era.
      Dangi 1 is equal to 2333 BC. 2013 AD is equal to Dangi 4346. Dangi represents
      "\ub2e8\uae30" in Korean. (All Korean characters are converted to Unicode
      format in this report.)

      The following is a result of dir command on the historical Korean calendar
      setting.

      > \ub2e8\uae30 4346-05-08 \uc624\uc804 11:43 <DIR> .
      > \ub2e8\uae30 4346-05-08 \uc624\uc804 11:43 <DIR> ..
      > \ub2e8\uae30 4346-05-08 \uc624\uc804 11:43 753
      DateFmtTestK.class
      > \ub2e8\uae30 4346-05-08 \uc624\uc804 11:43 330
      DateFmtTestK.java

      With the calendar setting, Host Locale Provider gets the era name
      "\ub2e8\uae30" (Dangi in Korean). Then, SimpleDateFormat outputs date like
      below.

      > \ub2e8\uae30 2013.05.08

      This is "BC 320" in Gregorian Calendar.

      If Java doesn't support the OS selected calendar, Era names should be
      "BC/AD".

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                naoto Naoto Sato
                Reporter:
                asaha Abhijit Saha
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: