Cet article décrit la mise en œuvre Java de la fonction d'impression des calendriers par année et mois. Partagez-le pour votre référence, comme suit:
Importer java.text.parseException; import java.text.simpledateFormat; import java.util.calendar; import java.util.date; public class CalendarBook {public static void main (String [] args) lance ParseException {CalendarBook CB = New CalendarBook (); CB.printWeekTitle (); CB.PrintCalendar (2018, 3); } public void printCalendar (int an, int mois) lève ParseException {String MonthoTr; // Formatez le mois car il doit être converti en if (mois <10) {moistr = "0" + mois; } else {moistr = mois + ""; // convertit les nombres et les chaînes en format de chaîne} chaîne annemonthstr = an + moisTr; SimpledateFormat sdf = new SimpledateFormat ("yyyymmdd"); Calendar Calendarend = calendar.getInstance (); Calendar CalendarStart = calendar.getInstance (); // Obtenez le nombre de jours que le mois a été inscrit sur la base de l'année et du mois INMOYSS = Getmonthlastday (année, mois); // La chaîne de date au début du mois de la chaîne DateStartstrtR = Yearmonthstr + "01"; // La chaîne de date à la fin du mois DateendStr = YearMonthstr + Journals; Date startDate = sdf.parse (dateStartstr); Date EndDate = sdf.parse (dateEndstr); CalendarStart.SetTime (startDate); CalendaRend.SetTime (EndDate); // Obtenez combien de semaines le mois a int semaines = calendarend.get (calendar.week_of_month); // Obtenez le premier jour du mois est le jour de la semaine, le dimanche est le premier jour, à partir de 1, et le lundi est 2 int dayofweek = calendarstart.get (calendar.day_of_week); Int Day = 1; // Le traitement spécial est effectué au cours de la première semaine du mois, et une ligne est imprimée séparément pour (int i = 1; i <= 7; i ++) {if (i> = dayofweek) {System.out.print ("+ day +" "); day ++;} else {System.out.print (" "") semaine = 1 semaine <Weeks; Getmonthlastday (int an, int mois) {int mois; int [] [] day = {{0, 31, 28, 31, 30, 31, 30, 31, 31, 31, 30, 31, 30, 31, 30, 31} 400 == 0. }}Capture d'écran du résultat en cours (effet de course, taille de police 5 est le meilleur):
PS: Voici quelques outils en ligne pour votre référence:
Calculateur de date / jour en ligne:
http://tools.vevb.com/jisuanqi/date_jisuanqi
Calendrier perpétuel en ligne:
http://tools.vevb.com/bianmin/wannianli
Outil de conversion du calendrier lunaire / grégorien:
http://tools.vevb.com/bianmin/yinli2yangli
Outil de conversion de l'horodatage Unix:
http://tools.vevb.com/code/unixtime
Pour plus d'informations sur le contenu lié à Java, veuillez consulter les sujets de ce site: "Résumé des compétences en fonctionnement de la date et de l'heure Java", "Tutorial sur la structure de données Java et l'algorithme", "Résumé des compétences de nœud de DOM de l'opération Java" et "Résumé des compétences de fonctionnement de Java Cache" "
J'espère que cet article sera utile à la programmation Java de tous.