首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Perl模块数据将iCal事件标记为“一整天”::ICal

使用Perl模块数据将iCal事件标记为“一整天”::ICal
EN

Stack Overflow用户
提问于 2013-09-06 08:09:55
回答 1查看 1.1K关注 0票数 1

有一个巨大的Perl模块资料来源:使创建iCal文件成为可能,这些文件可以添加到mac上的Calendar应用程序中(它们也可以添加到许多其他程序中)。

我使用了资料来源:,并编写了一个创建iCal文件的简单脚本。我已经添加了日历应用程序,它运行得很好。

以下是清单:

代码语言:javascript
复制
#!/usr/bin/perl

use strict;
use warnings FATAL => 'all';

use Data::ICal;
use Data::ICal::Entry::Event;
use Date::ICal;
use File::Slurp;

my $calendar = Data::ICal->new();

my $ical_date = Date::ICal->new(
    year => 2013,
    month => 9,
    day => 6,
);

my $event = Data::ICal::Entry::Event->new();
$event->add_properties(
    summary => "my party",
    description => "I'll cry if I want to",
    dtstart => $ical_date->ical(),
);

$calendar->add_entry($event);

write_file('sample.ics', $calendar->as_string);

但现在我要纪念这件事持续一整天。我已经抛出了模块源代码文档和代码,但是我还没有找到方法。

我怎样才能把这个事件持续一整天呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-06 09:01:04

根据innerjoin上的这个描述,您所要做的就是将dtstartdtend设置为YYYYMMDD (不超过小时或更短的时间),其中开始是(聚会的一天),第二天结束。

至少对雷鸟/太阳鸟来说,这是完美无缺的:

代码语言:javascript
复制
#!/usr/bin/perl

use strict;

use Data::ICal;
use Data::ICal::Entry::Event;
use File::Slurp;

my $calendar = Data::ICal->new();

my $event = Data::ICal::Entry::Event->new();
$event->add_properties(
    summary     => "my party",
    description => "I'll cry if I want to",
    dtstart     => "20130906",
    dtend       => "20130907",
);

$calendar->add_entry($event);

write_file('sample.ics', $calendar->as_string);
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18652929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档