Sortie mixte du calendrier occidental en Java

Préambule

Il semble fort probable que le calendrier occidental et le calendrier japonais seront affichés côte à côte. "Yyyy (ggge)" année "mm" mois "jj" jour "" dans Excel est affiché dans le style Java.

java8.java


JapaneseDate japdate = JapaneseDate.now();
DateTimeFormatter dtf1 = DateTimeFormatter.ofPattern("yyyy");
DateTimeFormatter dtf2 = DateTimeFormatter.ofPattern("'('Gyy')Année'MM'Mois'dd'journée'");
System.out.println(LocalDate.from(japdate).format(dtf1) + japdate.format(dtf2));

Et je pense que c'est probablement vrai. 2017/01/17 ajouté ↓ Ce n'était pas là (sueur)

java8.java


JapaneseDate japdate = JapaneseDate.now();
DateTimeFormatter dtf3 = DateTimeFormatter.ofPattern("uuuu'('Gyy')Année'MM'Mois'dd'journée'");
System.out.println(japdate.format(dtf3));

Il y a une lettre de modèle "u", et si vous l'utilisez, vous pouvez aller d'un seul coup. Il a bien évolué. 2017/01/17 ajouté ↑

java6.java


Locale loc = new Locale("ja", "JP", "JP");
Calendar cal = Calendar.getInstance(loc);
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy");
SimpleDateFormat sdf2 = new SimpleDateFormat("'('GGGGyyyy')Année'MM'Mois'dd'journée'", loc);
System.out.println(sdf1.format(cal.getTime()) + sdf2.format(cal.getTime()));

Donc, cela devrait être juste pour le moment.

Supplément

En passant un paramètre régional japonais à getInstance of Calendar, il est possible de renvoyer le calendrier impérial japonais (java.util.Japanese ImperialCalendar) au lieu du calendrier grégorien (java.util.GregorianCalendar), donc il correspond au soi-disant problème d'origine japonais. L'histoire qui sera possible. Étant donné que l'interprétation de la limite de la question originale est délicate, je pense qu'il y avait une histoire selon laquelle il ne devrait pas être utilisé facilement, mais au fond, je comprends qu'il n'y a pas de problème si la dernière date est donnée.

Serpentin?

Cependant, il est quelque peu désagréable de passer une chaîne de caractères au constructeur de cette locale, donc je passe simplement le Japon explicitement.

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

Donc, j'ai pensé que c'était bien, mais cela ne renvoie pas le calendrier impérial japonais. La raison est que Locale.JAPAN.getVariant () ne renvoie pas "JP"?

Est-ce quelque chose comme ça? Quelque chose d'étrange?

Recommended Posts

Sortie mixte du calendrier occidental en Java
Enregistrer la sortie dans un fichier en Java
Date de sortie en Java au format étendu ISO 8601
[Java] sortie, variables
Partition en Java
Changements dans Java 11
Janken à Java
Taux circonférentiel à Java
FizzBuzz en Java
Essayez de gratter environ 30 lignes en Java (sortie CSV)
J'ai essayé de sortir quatre-vingt-dix-neuf en Java
[Java] Quelque chose est affiché comme "-0.0" dans la sortie
Comparez la sortie PDF en Java pour les tests d'instantanés
À propos de la sortie du journal Java
Lire JSON en Java
Implémentation de l'interpréteur par Java
Faites un blackjack avec Java
Application Janken en Java
Programmation par contraintes en Java
Mettez java8 dans centos7
NVL-ish guy en Java
Joindre des tableaux en Java
"Hello World" en Java
Comment entrer / sortir des fichiers mainframe IBM en Java?
Commentaires dans la source Java
Fonctions Azure en Java
Formater XML en Java
Simple htmlspecialchars en Java
Implémentation Boyer-Moore en Java
Hello World en Java
Utiliser OpenCV avec Java
Mémorandum WebApi avec Java
Détermination de type en Java
Exécuter des commandes en Java (ping)
Divers threads en java
Implémentation du tri de tas (en java)
API Zabbix en Java
Art ASCII à Java
Comparer des listes en Java
POST JSON en Java
Sortie true avec if (a == 1 && a == 2 && a == 3) en Java (identifiant invisible)
Exprimer l'échec en Java
Triangle de sortie en Ruby
Créer JSON en Java
Manipulation de la date dans Java 8
Nouveautés de Java 8
Utiliser PreparedStatement en Java
Sortie en multiples de 3
Nouveautés de Java 9,10,11
Exécution parallèle en Java
A été effectué dans l'année de base de la semaine calendaire Java
Même en Java, je veux afficher true avec un == 1 && a == 2 && a == 3
Essayez d'utiliser RocksDB avec Java
Lire des fichiers binaires en Java 1
Évitez l'erreur que Yuma a donnée en Java
Obtenir des informations EXIF en Java