java生成ICS文件,这玩意好象是个什么日程表类的东西。可以导入到outlook里面用。
public void exportActivityDates(HttpServletRequest request, HttpServletResponse response)
throws Exception {
MenuBean menuBean = (MenuBean) request.getSession().getAttribute(SystemConstants.JE_MENU_BEAN);
Vector<ActivityBean> atyBeans = (Vector<ActivityBean>) menuBean.getLearningActivities();
StringBuffer strActivityDates = new StringBuffer();
strActivityDates.append("BEGIN:VCALENDAR\n");
strActivityDates.append("PRODID:-//Microsoft Corporation//Outlook 11.0 MIMEDIR//EN\n");
strActivityDates.append("VERSION:2.0\n");
strActivityDates.append("METHOD:PUBLISH\n");
ActivityBean atyBean = null;
for (int i = 0; i < atyBeans.size(); i++) {
atyBean = atyBeans.get(i);
if (atyBean.isIsShow()) {
strActivityDates.append("BEGIN:VEVENT\n");
String strDateTime = atyBean.getStartDateTime().replaceAll("-", "");
strActivityDates.append("DTSTART:").append(strDateTime).append("\n");
String endDateTime = atyBean.getEndDateTime().replaceAll("-", "");
strActivityDates.append("DTEND:").append(endDateTime).append("\n");
strActivityDates.append("LOCATION:").append(atyBean.getAtyName()).append("\n");
strActivityDates.append("TRANSP:OPAQUE\n");
strActivityDates.append("SEQUENCE:1\n");
strActivityDates.append("UID:8BB34ECC-1363-497B-B7CB-A268FD46CC7D\n");
String strNow = ISO8601Date.dateToString(new Date()).replaceAll("-", "");
strActivityDates.append("DTSTAMP:").append(strNow).append("\n");
strActivityDates.append("DESCRIPTION:").append(atyBean.getAtyName()).append("\n");
strActivityDates.append("SUMMARY:").append(atyBean.getAtyName()).append("\n");
strActivityDates.append("END:VEVENT\n");
}
}
strActivityDates.append("END:VCALENDAR");
OutputStream outputstream = response.getOutputStream();
response.reset();
response.setHeader("content-disposition", "attachment;filename=activityDates.ics");
response.setContentType("text/calendar");
byte[] bytes = strActivityDates.toString().getBytes("UTF-8");
for (int i = 0; i < bytes.length; i++)
outputstream.write(bytes[i]);
outputstream.close();
response.flushBuffer();
response.getWriter();
}
分享到:
相关推荐
讲xlsx文件的课表,转成ics格式,然后就可以批量的将课表添加到日历中。以实现对生活更有逻辑的管理
中国农历 ics 文件 1941-2050 全。 文件
用 javascript 编写的.ics文件生成器,带有可选的 php 后端。 这是从分叉它最初是从分叉 。 如何使用 只需调用对象并使用函数... var cal = ics ( ) ; cal . addEvent ( subject , description , location , ...
Python生成2022卡塔尔世界杯赛程日历订阅源代码,不错过每一场比赛,直接运行main.py即可,首先从百度体育抓取最新2022卡塔尔世界杯赛程日历,已完赛部分爬取比分,然后生成两个ics文件,worldcup2022_alarms.ics带...
ical.js ical.js 是一小段 Javascript 代码,它在客户端生成供下载的 ical 日历文件。安装git 克隆 < script src =" ical.js " > </ script > ###依赖Blob.js - < script src =" ...
java EPS ICS 原子函数开发 身份的收款就付款到老师 WORD文档
该日历资源用github的代码爬自香港天文台,包含了中国农历ics文件2000年-2100年间100年的全部农历日历,带二十四节气(不需要这么长时间的可以再文本编辑器打开删除即可)。 直接生成的数据仅每月初一带月份,其余...
中国农历ics文件1941-2050全
ICS是Microsoft Outlook 2002 或更高版本创建的 iCalendar 格式文件,ICSviewer 是一个方便和可靠的应用程序旨在将 iCalendar 文件 (具有扩展名 ICS) 转换为表视图。这里是它的工作原理: 你想要处理的 ICS 文件...
生成器 安装 npm install -S ics 用法示例 创建一个iCalendar事件: const ics = require ( 'ics' ) const event = { start : [ 2018 , 5 , 30 , 6 , 30 ] , duration : { hours : 6 , minutes : 30 } , title ...
Indy9上传大于2G的文件有问题,修改源码通用性降低,可以考虑使用ICS的FtpClient、SslFtpClient 上传,虽然ICS更新速度不及Indy,上传突破2G以上的文件不成问题
java8 源码 ICS项目 模型篇 请求出入参 请求入参 所有Controller入参,一律使用 DTO结尾进行交互 所有 DTO 命名,前面采用驼峰命名,后面DTO大写 所有DTO内参数,如果是一组,请用List<类型>进行接口,尽量不用分隔符隔...
2024 节假日 ics 文件
创建具有动态重复事件的ics日历。 用法 adversary [-h] [-t T] [-d D] [-f OUT] namepattern startdate count {year, month, day} 换人规则 namepattern字段可以包含替换字符,例如{},它们被替换为特定于事件的...
给定一组课程及其插槽,生成ICS文件,可以将其导入任何日历客户端中。 背景 一个学期的课程表可以通过在自己选择的任何日历中简单地创建一个重复活动来创建,但其中不包含正在工作的星期六,也不排除有放假的日子。 ...
Delphi XE3使用ICS的FTPClient从FTP服务器下载文件,本人用来实现客户端软件自动升级功能,提供从FTP下载文件的源码供大家参考。之前用的IdFTP连接服务器经常出现10054错误,参考网上的意见使用ICS的FTPClient解决了...
该软件是一个用于修复ics组件的小软件,是一门用于修复中兴软件后,无法共享宽带的修复器,该软件对XP系统几乎能修复好ICS共享,对于win7,就该看你的运气啦,成功率偏低了点,所以,在你使用该软件,请给我们点 ...
android 4.0 ICS 冰淇淋三明治 源码 java
2022卡塔尔世界杯小组赛赛程.ics
从导出的JMC数据生成.ics文件。 源文件 该脚本默认需要从JMC导出两个特别的.csv。 学生们 导航到时间表->学生->参考卡 在“选择条款”下选择“年份”,然后单击“导出”。 重命名此文件students.csv并将其放置在...