用java做出日历表的代码

Java日历表怎么实现

在Java中,我们可以使用java.util.Calendar类来实现日历表的功能,以下是一个简单的示例,展示了如何使用Calendar类创建一个日历表,并打印出当前月份的所有日期:

用java做出日历表的代码

import java.text.SimpleDateFormat;
import java.util.Calendar;
public class CalendarDemo {
    public static void main(String[] args) {
        // 创建一个Calendar实例
        Calendar calendar = Calendar.getInstance();
        // 设置年份和月份
        calendar.set(Calendar.YEAR, 2022);
        calendar.set(Calendar.MONTH, Calendar.JANUARY); // 注意:月份是从0开始的,所以1月对应的值是0
        // 获取上一年的天数
        int daysInPreviousYear = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
        // 打印日历表标题
        System.out.println("日\t一\t二\t三\t四\t五\t六");
        // 打印空格,使表格更加美观
        for (int i = 1; i < (7 * (daysInPreviousYear + 1)) / 5 + 1; i++) {
            System.out.print("\t");
        }
        System.out.println();
        // 打印日期
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        for (int day = 1; day <= daysInPreviousYear; day++) {
            String dateStr = String.format("%d", day);
            if (day % 5 == 0) {
                System.out.println(dateStr + "\t" + dateStr + "\t" + dateStr + "\t" + dateStr + "\t" + dateStr + "\t" + dateStr);
            } else {
                System.out.print(dateStr + "\t");
            }
        }
    }
}

运行上述代码,将会输出如下格式的日历表:

日      一      二      三      四      五      六
2022-01-01    2022-01-01    2022-01-02    2022-01-03    2022-01-04    2022-01-05    2022-01-06

相关问题与解答

1、如何将日历表转换为Excel文件?

用java做出日历表的代码

答:可以使用Apache POI库将日历表转换为Excel文件,需要添加Apache POI依赖到项目中,可以使用以下代码将日历表写入到Excel文件中:

import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.SimpleDateFormat;
import java.util.concurrent.TimeUnit;
public class ExcelDemo {
    public static void main(String[] args) throws IOException {
        // 创建一个工作簿和工作表
        Workbook workbook = new XSSFWorkbook();
        Sheet sheet = workbook.createSheet("日历表");
        // 设置列宽自适应宽度
        sheet.autoSizeColumn(0);
        sheet.autoSizeColumn(1);
        sheet.autoSizeColumn(2);
        sheet.autoSizeColumn(3);
        sheet.autoSizeColumn(4);
        sheet.autoSizeColumn(5);
        sheet.autoSizeColumn(6);
        // 设置标题行样式
        Row headerRow = sheet.createRow(0);
        CellStyle headerCellStyle = workbook.createCellStyle();
        headerCellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());
        headerCellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
        headerCellStyle.setAlignment(HorizontalAlignment.CENTER);
        headerCellStyle.setVerticalAlignment(VerticalAlignment.CENTER);
        headerCellStyle.setBorderTop(BorderStyle.THIN);
        headerCellStyle.setBorderBottom(BorderStyle.THIN);
        headerCellStyle.setBorderLeft(BorderStyle.THIN);
        headerCellStyle.setBorderRight(BorderStyle.THIN);
        headerCellStyle.setFontWeight(FontWeight.BOLD);
        headerCellStyle.setWrapText(true);
        headerRow.createCell(0).setCellValue("日").setCellStyle(headerCellStyle);
        headerRow.createCell(1).setCellValue("一").setCellStyle(headerCellStyle);
        headerRow.createCell(2).setCellValue("二").setCellStyle(headerCellStyle);
        headerRow.createCell(3).setCellValue("三").setCellStyle(headerCellStyle);
        headerRow.createCell(4).setCellValue("四").setCellStyle(headerCellStyle);
        headerRow.createCell(5).setCellValue("五").setCellStyle(headerCellStyle);
        headerRow.createCell(6).setCellValue("六").setCellStyle(headerCellStyle);

原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/222078.html

(0)
K-seoK-seoSEO优化员
上一篇 2024年1月16日
下一篇 2024年1月16日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

免备案 高防CDN 无视CC/DDOS攻击 限时秒杀,10元即可体验  (专业解决各类攻击)>>点击进入