日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

东油ical-ics日历课程

發布時間:2023/12/29 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 东油ical-ics日历课程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

東油ical-ics日歷課程

  • ics文件
  • 文件作用
  • 實現過程
    • excel課表解析
    • ics文件生成
    • 后端實現
    • 前端實現
    • 實現效果
  • 項目地址

ics文件

.ics是Microsoft Outlook 2002 或更高版本創建的 iCalendar 格式文件,ics文件支持PC、Android、iOS等進行日歷日程導入

文件作用

由于教務系統導出的課程表為excel文件,打開excel課表或者截圖有一點點繁瑣,并且沒有上課提醒

實現過程

excel課表解析

excel課表格式如下

根據課表的排版規律使用Apache POI框架對課表數據進行解析,根據課程表排版可知課程信息由合并單元格存儲,這里的主要操作就是獲取獲取合并單元格中的課程信息,例如上課時間、地點等

/*** 獲取合并單元格的值* @author dqp* @param sheet* @param row* @param column* @return*/public static String getMergedRegionValue(Sheet sheet, int row, int column) {int sheetMergeCount = sheet.getNumMergedRegions();for (int i = 0; i < sheetMergeCount; i++) {CellRangeAddress ca = sheet.getMergedRegion(i);int firstColumn = ca.getFirstColumn();int lastColumn = ca.getLastColumn();int firstRow = ca.getFirstRow();int lastRow = ca.getLastRow();if (row >= firstRow && row <= lastRow) {if (column >= firstColumn && column <= lastColumn) {Row fRow = sheet.getRow(firstRow);Cell fCell = fRow.getCell(firstColumn);return getCellValue(fCell);}}}return null;}

數據獲取完成以后就需要對有效數據進行篩選

ics文件生成

數據篩選完成以后,同樣選用ical4j框架對每一條課程數據進行生成

后端實現

前面步驟已經實現了ics文件的導出,這里使用的是spring boot進行后端實現

前端實現

前端由我的室友帥丹完成

實現效果

目前實現對東油課表excel文件進行解析生成ics文件,并且還存在一些問題為解決,先湊合著用

項目地址

歡迎訪問nepu-ical日歷課程

總結

以上是生活随笔為你收集整理的东油ical-ics日历课程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。