Zeigen Sie den japanischen Kalender und Tag mit der Java8-Standardklasse an

Für den Datums- und Uhrzeittyp von Java8 werden verschiedene Klassen vorbereitet. Obwohl es multifunktional ist, ist es schwierig zu verwenden (der japanische Kalender kann mit JapaneseDate verarbeitet werden, enthält jedoch keine Zeitinformationen usw.) Ich dachte an eine Dienstprogrammmethode, die ein beliebiges Datum und eine beliebige Uhrzeit in einem beliebigen Format ausgibt.

DateTimeFormat.java


import java.time.LocalTime;
import java.time.chrono.ChronoLocalDateTime;
import java.time.chrono.JapaneseDate;
import java.time.format.DateTimeFormatter;
import java.time.temporal.ChronoField;
import java.time.temporal.ChronoUnit;
import java.util.Locale;
import java.util.function.Function;

@SuppressWarnings("javadoc")
public class DateTimeFormat {

    public static String dateTimeFormat(String format) {
        return dateTimeFormat(format, Function.identity());
    }

    public static String dateTimeFormat(String format, Function<ChronoLocalDateTime<JapaneseDate>, ChronoLocalDateTime<JapaneseDate>> modify) {
        return modify.apply(JapaneseDate.now().atTime(LocalTime.now())).format(DateTimeFormatter.ofPattern(format, Locale.JAPAN));
    }

    public static void main(String[] __) {
        //Aktuelles Datum und Uhrzeit
        System.out.println(dateTimeFormat("uuuu/MM/dd(E) HH:mm:ss"));
        System.out.println(dateTimeFormat("Gy Jahr M Monat d Tag(EEEE)H Stunden m Minuten s Sekunden"));
        System.out.println(dateTimeFormat("GGGGGy.M.d"));
        //Letzter Tag dieses Monats
        System.out.println(dateTimeFormat("uuuu/MM/dd(E)", d -> d.with(ChronoField.DAY_OF_MONTH, d.toLocalDate().lengthOfMonth())));
        //Nach einer Woche
        System.out.println(dateTimeFormat("Gy Jahr M Monat d Tag(E)", d -> d.plus(7, ChronoUnit.DAYS)));
        //1. nächsten Monat
        System.out.println(dateTimeFormat("GGGGGy.M.d", d -> d.with(ChronoField.DAY_OF_MONTH, 1).plus(1, ChronoUnit.MONTHS)));
    }

}

Ausführungsergebnis


2017/06/15(Holz) 11:30:05
15. Juni 2017(Donnerstag)11:30:05
H29.6.15
2017/06/30(Geld)
22. Juni 2017(Holz)
H29.7.1

Recommended Posts

Zeigen Sie den japanischen Kalender und Tag mit der Java8-Standardklasse an
[Java] Abrufen und Anzeigen des Datums 10 Tage später mithilfe der von Java 8 hinzugefügten Zeit-API.
[Java] Tag ab Datum berechnen (Kalenderklasse nicht verwenden)
[Java] Holen Sie sich das Datum 10 Tage später mit der Calendar-Klasse
Ausgabe des Tages mit der Ruby's Date-Klasse
Java-Unit-Test Beurteilung des angegebenen Tages Beurteilen Sie, ob ArDate, Date, Calendar, long der angegebene Tag ist.
[Java] Anzeigen der von LocalDate und DateTimeformatter erfassten Tage auf Japanisch
Wurde im Basisjahr der Java-Kalenderwoche durchgeführt
[Java] Abrufen von Datumsinformationen 10 Tage später in Millisekunden in der Datumsklasse
Lesen Sie die ersten 4 Bytes der Java-Klassendatei und geben Sie CAFEBABE aus
Ich habe versucht, den Kalender mit Java auf der Eclipse-Konsole anzuzeigen.
Sechs-Wege-Primzahlenfolge Adventskalender 2018 Java-Ausgabe
Zusammenfassung von Java Math.random und Import (Kalender)
Zeigen Sie den japanischen Kalender und Tag mit der Java8-Standardklasse an
Memorandum des neuen Absolventen SES [Java Object Oriented Edition]
[Java] Übersicht über Java
Links für jede Version (japanische Version) der Java SE-API
[Java] Ermittelt den Tag eines bestimmten Tages
[Java] Verwendung der Calendar-Klasse
Zusammenfassung von Java Math.random und Import (Kalender)
Ich habe die Eigenschaften von Java und .NET verglichen
[Ruby] Code zur Anzeige des Tages
Informationen zu next () und nextLine () der Scannerklasse
Zeigen Sie "Hello World" im Browser mit Java an
Zeigen Sie "Hello World" im Browser mit Java an
Erster Touch der Files-Klasse (oder Java 8)
[Java] Verwendung der Kalenderklasse und der Datumsklasse
[Endgültige Version] Überprüfen Sie den Betrieb des japanischen Kalenders auf der Intensivstation, um das neue Yuan-Problem zu unterstützen.
So erhalten Sie den Klassennamen des Arguments von LoggerFactory.getLogger, wenn Sie SLF4J in Java verwenden
Mit der Kalenderklasse von Java bleibt man am letzten Tag des Monats ein wenig hängen
[Rails] So zeigen Sie die Wettervorhersage der registrierten Adresse auf Japanisch mit OpenWeatherMap an
[Ubuntu 20.04] Zeigt den Tag auf dem Datum / der Uhr an
Geben Sie den Maximalwert eines Arrays mithilfe der Java-Standardausgabe aus
Bitte beachten Sie die Aufteilung (Aufteilung) von Java Kotlin Int und Int
Der Vergleich von enum ist == und gleich ist gut [Java]
[Java] Sortieren Sie die Liste mit Streams und Lambda-Ausdrücken
Versuchen Sie, das Eratostenes-Sieb mithilfe der Java-Standardbibliothek zu implementieren
Den aktuellen Status von Java organisieren und die Zukunft betrachten
Java-Sprache aus der Sicht von Kotlin und C #
Ich habe die Typen und Grundlagen von Java-Ausnahmen zusammengefasst
Verwendung von Abstract Class und Interface in Java richtig
[Ruby] Klassenverschachtelung, Vererbung und die Grundlagen des Selbst
[Java10] Achten Sie darauf, var und generics nicht zusammen zu verwenden
[Java] Umgang mit Zeichenketten (String-Klasse und StringBuilder-Klasse)
Fassen Sie die zusätzlichen Elemente der optionalen Klasse in Java 9 zusammen
Beurteilung des Kalenders
Senden und Empfangen einfacher Nachrichten mit der Kafka-Komponente des Apache Camel-Frameworks (Java DSL Edition)
[Hinweis] Java Ausgabe der Summe von ungeraden und geraden Elementen
Implementieren Sie Thread in Java und versuchen Sie, die anonyme Klasse Lambda zu verwenden
Ich habe das Verhalten von Java Scanner und .nextLine () nicht wirklich verstanden.
[Java] Wirf eine Anfrage und zeige den Bildschirm ② (GET / POST) an.
Suchen Sie die Adressklasse und den Adresstyp aus der IP-Adresse mit Java
Ich habe versucht, die Grundlagen von Kotlin und Java zusammenzufassen
[Java] Vergleichsmethode für Zeichenketten und Vergleichsmethode mit regulären Ausdrücken
Bei Verwendung des Konstruktors der Date-Klasse von Java wird das Datum um 1900 vorverlegt.
[Java] Struktur der Auflistungsklasse festlegen (zu HashSet und TreeSet)
Befehl zum Überprüfen der Anzahl und des Status von Java-Threads
[Java] Wirf eine Anfrage und zeige den Bildschirm an (GET / POST)
Überprüfen Sie den Status der Java-Anwendung, ohne das Überwachungstool zu verwenden
Java-Anfänger fassten das Verhalten von Array und ArrayList kurz zusammen
[Java] Versuchen Sie, die Elemente der Json-Zeichenfolge mithilfe der Bibliothek zu bearbeiten
Die Geschichte, Java mithilfe der BitBucket-Pipeline nach Heroku zu bringen
[Java] Ich habe über die Vorzüge und Verwendungen von "Schnittstelle" nachgedacht.