.ics文件中使用的时间格式?

时间:2012-05-11 12:55:09

标签: java events calendar icalendar

我正在用Java创建一个.ics文件,我需要知道要使用的日期和时间格式。

以下是我的ics文件的当前格式:

BEGIN:VCALENDAR
VERSION:2.0
BEGIN:VEVENT
DTSTART:20120901T180000
DTEND:20120901T183000
SUMMARY:my birthday
LOCATION:Bangalore
DESCRIPTION:Every one is welcome..!! time to party
PRIORITY:3
END:VEVENT
END:VCALENDAR

我使用ISO_DATETIME_TIME_ZONE_FORMAT将我的日期转换为所需的格式,但它返回2012-09-01T18:00:00+00:00

DTSTARTDTEND值中使用的日期格式是什么?具体来说,我如何在Java中正确格式化?

3 个答案:

答案 0 :(得分:13)

使用Java,您可以使用

DateFormat dateFormat = new SimpleDateFormat("yyyyMMdd'T'HHmmss");

iCalendar RFC 5545

了解详情

答案 1 :(得分:0)

您是否有使用第三方库的预订,这将使这更容易?如果没有,请查看ICal4j

答案 2 :(得分:0)

基于Roger的回答,我为想要快速在线“转换器”的任何人编写了一个快速代码块。

https://repl.it/repls/SomeNovelFields

获得编译和运行的代码在这里:

import java.text.DateFormat;
import java.util.Date;
import java.text.SimpleDateFormat;

public class HelloWorld{

     public static void main(String []args){
        System.out.println("Hello World");
        DateFormat dateFormat = new SimpleDateFormat("yyyyMMdd'T'HHmmss");

        try {
        Date date = dateFormat.parse("20140110T000732");
                System.out.println(date);

        } catch(Exception e) {

        }
     }
}