Este artigo descreve a implementação Java da função dos calendários de impressão por ano e mês. Compartilhe -o para sua referência, como segue:
importar java.text.parseException; importar java.text.simpledateFormat; importar java.util.calendar; importar java.util.date; public classe calendarbook {public static void main (string [] args) lança parseexception {calendarbook CB = novo calendário (); cb.printweektitle (); CB.printCalendar (2018, 3); } public void printCalendar (int ano, int mês) lança parseexception {string mesestr; // formate o mês porque é para convertê -lo em formato yyyymmdd if (mês <10) {mesestr = "0" + mês; } else {mesestr = mês + ""; // converte números e strings em formato de string} string anoMONTHSTR = Ano + Mesestr; SimpledateFormat sdf = new SimpleDateFormat ("yyyymmdd"); Calendário calendário = calendar.getInstance (); Calendário calendarStart = calendar.getInstance (); // Obtenha quantos dias o mês foi inserido com base no ano e no mês int mensados = getMonthlastday (ano, mês); // a string de data no início do mês string datestartstr = anoMonthstr + "01"; // a string de data no final do mês string dateEndstr = anoMonthstr + MonthDays; Data startDate = sdf.parse (datestartstr); Data ENDDATE = SDF.PARSE (DATEENDSTR); calendarStart.setTime (StartDate); calendário.setTime (EndDate); // Obtenha quantas semanas o mês tem int weeks = calendarend.get (calendar.week_of_month); // Obtenha o primeiro dia do mês é o dia da semana, aqui o domingo é o primeiro dia, a partir de 1, e segunda -feira é 2 int Dayofweek = calendarStart.get (calendar.day_of_week); int dia = 1; // Processamento especial é feito na primeira semana do mês, e uma linha é impressa separadamente para (int i = 1; i <= 7; i ++) {if (i> = DayofWeek) {System.out.print ("+dia+" "); dia ++;} else {System.out.print ("); Semana = 1 Weeks; GetMONTHLASTDAY (INT Ano, Int Mês) {int Monthday; % 400 == 0) {// pular ano de mês = dia [1] [mês]; }}Captura de tela do resultado em execução (efeito de execução, tamanho da fonte 5 é o melhor):
PS: Aqui estão algumas ferramentas on -line para sua referência:
Calculadora de data/dia online:
http://tools.vevb.com/jisuanqi/date_jisuanqi
Calendário perpétuo online:
http://tools.vevb.com/bianmin/wannianli
Ferramenta de conversão online de conversão de calendário lunar/gregoriana:
http://tools.vevb.com/bianmin/yinli2yangli
Ferramenta de conversão do UNIX Timestamp:
http://tools.vevb.com/code/unixtime
Para obter mais informações sobre o conteúdo relacionado ao Java, consulte os tópicos deste site: "Resumo de habilidades de operação de data e hora do Java", "Tutorial sobre Estrutura e Algoritmo de Dados Java", "Resumo da Operação Java Dom Node Skills" e "Summary of Java Cache Opery Skills"
Espero que este artigo seja útil para a programação Java de todos.