gpt4 book ai didi

c# - 如何使用 Ical.Net 提取数据?

转载 作者:行者123 更新时间:2023-11-30 17:28:01 25 4
gpt4 key购买 nike

我有一个 ics 文件,我想从中读取数据。我使用 Nuget 下载了 Ical.Net,我正在尝试弄清楚如何使用它。我想要做的就是获得与将我的 ics 文件上传到此网站时获得的信息相同的信息:https://icsconvert.appspot.com/

对于每个“事件”:

  • 总结
  • 描述
  • 开始
  • 结束
  • 地点

但我不明白如何从文件中获取该信息。这是我到目前为止所拥有的:

string filepath = @"C:\My\file\path\myIcs.ics";
System.IO.StreamReader file = new System.IO.StreamReader(filepath);
string content = file.ReadToEnd();
file.Close();

Ical.Net.Calendar calendar = Ical.Net.Calendar.Load(content);

foreach (var c in calendar.RecurringItems)
{
// 1. Do something!
// 2. ????
// 3. Profit!
}

这是我从 here 获得的示例文件:

BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
BEGIN:VEVENT
SUMMARY:Access-A-Ride Pickup
DTSTART;TZID=America/New_York:20130802T103400
DTEND;TZID=America/New_York:20130802T110400
LOCATION:1000 Broadway Ave.\, Brooklyn
DESCRIPTION: Access-A-Ride trip to 900 Jay St.\, Brooklyn
STATUS:CONFIRMED
SEQUENCE:3
BEGIN:VALARM
TRIGGER:-PT10M
DESCRIPTION:Pickup Reminder
ACTION:DISPLAY
END:VALARM
END:VEVENT
BEGIN:VEVENT
SUMMARY:Access-A-Ride Pickup
DTSTART;TZID=America/New_York:20130802T200000
DTEND;TZID=America/New_York:20130802T203000
LOCATION:900 Jay St.\, Brooklyn
DESCRIPTION: Access-A-Ride trip to 1000 Broadway Ave.\, Brooklyn
STATUS:CONFIRMED
SEQUENCE:3
BEGIN:VALARM
TRIGGER:-PT10M
DESCRIPTION:Pickup Reminder
ACTION:DISPLAY
END:VALARM
END:VEVENT
END:VCALENDAR

我怎样才能得到我想要的数据?我想使用 foreach 将该数据保存到自定义列表中。

最佳答案

据我所知,您只有一组两个独立的事件,而不是重复发生的事件(如使用 RRULE 定义的那样)。

我想你可能会在 calendar.Events 中找到你需要的东西(我从来没有使用过这个库,只是快速浏览了一下源代码,看起来日历类有“事件”属性)。

关于c# - 如何使用 Ical.Net 提取数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53764948/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com