Este artículo describe la implementación de Java de la función de imprimir calendarios por año y mes. Compártelo para su referencia, como sigue:
import java.text.parseException; import java.text.simpledateFormat; import java.util.calendar; import java.util.date; public class calendarbook {public static void main (string []) lanza parseException {calendarbook cb = new Calendarbook (); cb.printweektitle (); CB.Printcalendar (2018, 3); } public void printCalendar (int año, int mes) arroja parseException {string messtr; // formatear el mes porque se debe convertir a si (mes <10) {messtr = "0" + mes; } else {messtr = mes + ""; // Convertir números y cadenas en formato de cadena} String Yearmonthstr = Year + Mesesstr; SimpleDateFormat sdf = new SimpleDateFormat ("yyyymmdd"); Calendario calendarend = calendar.getInstance (); Calendario calendarstart = calendar.getInstance (); // Obtenga cuántos días se ha ingresado el mes en función del año y el mes int mesdays = getMonthlastday (año, mes); // La cadena de fecha al comienzo del mes String dataStartstr = Yearmonthstr + "01"; // La cadena de fecha al final del mes String dateendstr = Yearmonthstr + mes mes; Date startDate = sdf.parse (dataStartstr); Date enddate = sdf.parse (dateendstr); CalendarStart.SetTime (StartDate); Calendarend.SetTime (End Data); // Obtener cuántas semanas el mes tiene inteks ints = calendarend.get (calendar.week_of_month); // Obtenga el primer día del mes es el día de la semana, aquí el domingo es el primer día, a partir del 1, y el lunes es 2 int dayofweek = calendarstart.get (calendar.day_of_week); int día = 1; // El procesamiento especial se realiza en la primera semana del mes, y una línea se imprime por separado para (int i = 1; i <= 7; i ++) {if (i> = dayofweek) {system.out.print ("+day+" "); día ++;} else {System.out.print (" ");}} System.out.println (); // = 1 Week <Week; getMonthlastday (int año, int mes) {int mes de mes; % 400 == 0) {// LEAP Año Messday = Día [1] [Mes]; }}Captura de pantalla del resultado de ejecución (efecto de ejecución, fuente de fuente 5 es la mejor):
PD: Aquí hay algunas herramientas en línea para su referencia:
Calculadora de fecha/día en línea:
http://tools.vevb.com/jisuanqi/date_jisuanqi
Calendario perpetuo en línea:
http://tools.vevb.com/bianmin/wannianli
Herramienta de conversión de calendario lunar/gregor en línea:
http://tools.vevb.com/bianmin/yinli2yangli
Herramienta de conversión de la marca de tiempo UNIX:
http://tools.vevb.com/code/unixtime
Para obtener más información sobre el contenido relacionado con Java, consulte los temas de este sitio: "Resumen de las habilidades de operación de fecha y hora de Java", "Tutorial sobre estructura de datos de Java y algoritmo", "Resumen de habilidades de nodo de operación de Java DOM" y "Resumen de habilidades de operación de caché de Java"
Espero que este artículo sea útil para la programación Java de todos.