Gemischte Ausgabe des westlichen Kalenders in Java

Präambel

Ich denke, es ist sehr wahrscheinlich, dass der westliche Kalender und der japanische Kalender nebeneinander angezeigt werden. "Yyyy (ggge)" Jahr "mm" Monat "TT" Tag "" in Excel wird im Java-Stil ausgegeben.

java8.java


JapaneseDate japdate = JapaneseDate.now();
DateTimeFormatter dtf1 = DateTimeFormatter.ofPattern("yyyy");
DateTimeFormatter dtf2 = DateTimeFormatter.ofPattern("'('Gyy')Jahr'MM'Mond'dd'Tag'");
System.out.println(LocalDate.from(japdate).format(dtf1) + japdate.format(dtf2));

Und ich denke es ist wahrscheinlich richtig. 2017/01/17 hinzugefügt ↓ Es war nicht da (Schweiß)

java8.java


JapaneseDate japdate = JapaneseDate.now();
DateTimeFormatter dtf3 = DateTimeFormatter.ofPattern("uuuu'('Gyy')Jahr'MM'Mond'dd'Tag'");
System.out.println(japdate.format(dtf3));

Es gibt einen Musterbuchstaben "u", und wenn Sie diesen verwenden, können Sie in einem Schuss gehen. Es hat sich richtig entwickelt. 17.01.2017 hinzugefügt ↑

java6.java


Locale loc = new Locale("ja", "JP", "JP");
Calendar cal = Calendar.getInstance(loc);
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy");
SimpleDateFormat sdf2 = new SimpleDateFormat("'('GGGGyyyy')Jahr'MM'Mond'dd'Tag'", loc);
System.out.println(sdf1.format(cal.getTime()) + sdf2.format(cal.getTime()));

Es sollte also vorerst richtig sein.

Ergänzung

Durch Übergeben eines japanischen Gebietsschemas an getInstance of Calendar ist es möglich, den japanischen imperialen Kalender (java.util.Japanese ImperialCalendar) anstelle des gregorianischen Kalenders (java.util.GregorianCalendar) zurückzugeben, sodass er der sogenannten japanischen Originalausgabe entspricht. Die Geschichte, die möglich sein wird. Da die Interpretation der Grenze der ursprünglichen Ausgabe heikel ist, gab es meiner Meinung nach eine Geschichte, die nicht einfach verwendet werden sollte, aber im Grunde verstehe ich, dass es kein Problem gibt, wenn das späteste Datum angegeben wird.

Serpentin?

Es ist jedoch etwas unangenehm, die Zeichenfolge an den Konstruktor dieses Gebietsschemas zu übergeben. Übergeben Sie also einfach Japan explizit.

Locale loc = Locale.JAPAN;
Calendar cal = Calendar.getInstance(loc);

Also, ich fand es gut, aber dies gibt den japanischen imperialen Kalender nicht zurück. Der Grund ist, dass Locale.JAPAN.getVariant () nicht "JP" zurückgibt?

Ist das so etwas? Etwas Merkwürdiges?

Recommended Posts

Gemischte Ausgabe des westlichen Kalenders in Java
Protokollausgabe in Datei in Java
Ausgabedatum in Java im erweiterten ISO 8601-Format
[Java] Ausgabe, Variablen
Partisierung in Java
Änderungen in Java 11
Janken in Java
Umfangsrate in Java
FizzBuzz in Java
Versuchen Sie, etwa 30 Zeilen in Java zu kratzen (CSV-Ausgabe)
Ich habe versucht, neunundneunzig in Java auszugeben
[Java] In der Ausgabe wird etwas als "-0.0" angezeigt
Vergleichen Sie die PDF-Ausgabe in Java für Snapshot-Tests
Informationen zur Java-Protokollausgabe
Lesen Sie JSON in Java
Interpreter-Implementierung durch Java
Machen Sie einen Blackjack mit Java
Janken App in Java
Einschränkungsprogrammierung in Java
Setzen Sie Java8 in Centos7
NVL-artiger Typ in Java
Verbinden Sie Arrays in Java
"Hallo Welt" in Java
Wie kann ich IBM Mainframe-Dateien in Java eingeben / ausgeben?
Kommentare in der Java-Quelle
Azure funktioniert in Java
Formatieren Sie XML in Java
Einfache HTML-Spezialchars in Java
Boyer-Moore-Implementierung in Java
Hallo Welt in Java
Verwenden Sie OpenCV mit Java
WebApi-Memorandum mit Java
Typbestimmung in Java
Befehle in Java ausführen (Ping)
Verschiedene Threads in Java
Implementierung der Heap-Sortierung (in Java)
Zabbix API in Java
ASCII-Kunst in Java
Listen in Java vergleichen
POST JSON in Java
Ausgabe true mit if (a == 1 && a == 2 && a == 3) in Java (Invisible Identifier)
Fehler in Java ausdrücken
Ausgabedreieck in Ruby
Erstellen Sie JSON in Java
Datumsmanipulation in Java 8
Was ist neu in Java 8?
Verwenden Sie PreparedStatement in Java
Ausgabe in Vielfachen von 3
Was ist neu in Java 9,10,11
Parallele Ausführung in Java
Wurde im Basisjahr der Java-Kalenderwoche durchgeführt
Selbst in Java möchte ich true mit == 1 && a == 2 && a == 3 ausgeben
Versuchen Sie es mit RocksDB mit Java
Lesen Sie Binärdateien in Java 1
Vermeiden Sie den Fehler, den Yuma in Java gemacht hat
Holen Sie sich EXIF-Informationen in Java