java打印日历

Posted 芬乐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java打印日历相关的知识,希望对你有一定的参考价值。

代码:

package com.sjx.test1;
import java.text.DateFormatSymbols;
import java.util.*;
/**
 * @version 1.0 
 * @author sjx
 */

public class Graph {
    public static void main(String[] args)
    {
        Locale.setDefault(Locale.US); //在java.util.locale包下,如果不加它,显示的就是星期几,而不是sun,sat之类的,中文是locale.CHINESE或者CHINA
        GregorianCalendar d = new GregorianCalendar();
         int today = d.get(Calendar.DAY_OF_MONTH);
         int month = d.get(Calendar.MONTH);
         
         d.set(Calendar.DAY_OF_MONTH, 1);
         
         int weekday = d.get(Calendar.DAY_OF_WEEK);
         
         int firstDayOfWeek = d.getFirstDayOfWeek();
         
         int indent = 0;
         while(weekday!=firstDayOfWeek)
         {
             indent++;
             d.add(Calendar.DAY_OF_MONTH, -1);
             weekday = d.get(Calendar.DAY_OF_WEEK);
         }
         
         String [] weekdayNames = new DateFormatSymbols().getShortWeekdays();
         do
         {
             System.out.printf("%4s", weekdayNames[weekday]);
             d.add(Calendar.DAY_OF_MONTH, 1);
             weekday = d.get(Calendar.DAY_OF_WEEK);
         }while(weekday!=firstDayOfWeek);
         
         System.out.println();
         for(int i = 1; i<=indent; i++)
         System.out.print("    ");
         
         d.set(Calendar.DAY_OF_MONTH, 1);
         do
         {
             int day = d.get(Calendar.DAY_OF_MONTH);
             System.out.printf("%3d", day);
             
             if(day==today) System.out.print("*");
             else System.out.print(" ");
             
             d.add(Calendar.DAY_OF_MONTH, 1);
             weekday = d.get(Calendar.DAY_OF_WEEK);
             
             if(weekday==firstDayOfWeek)
                 System.out.println();
         }while(d.get(Calendar.MONTH)==month);
         
         if(weekday!=firstDayOfWeek) System.out.println();
    }
}

效果:

以上是关于java打印日历的主要内容,如果未能解决你的问题,请参考以下文章

java打印日历

Java打印日历表

从给定的月份/年份打印日历

日历打印用java实现

使用java 打印日历

Java实验项目二——打印某年某月日历