8

我正在用 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 中正确格式化?

4

3 回答 3

15

使用 Java,您可以使用

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

在iCalendar RFC 5545中查看更多信息

于 2012-05-11T14:12:00.157 回答
0

您是否对使用第三方库有任何保留可以使这更容易?如果没有,请查看ICal4j

于 2012-05-11T13:08:05.883 回答
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) {

        }
     }
}
于 2019-05-29T19:42:42.393 回答