Windows Phone 7 – iCal Generator – C#
发布时间:2020-12-14 02:51:57 所属栏目:Windows 来源:网络整理
导读:我需要从从设备获取的约会生成iCal字符串. Windows Phone 7是否支持从约会生成iCal的库? 我尝试过DDay.iCal,但它不适用于Windows Phone 7. 解决方法 我没有找到特定于Windows Phone 7的库,但编写自己的类来生成iCal文件应该不会太难,因为毕竟iCal只是文本.
我需要从从设备获取的约会生成iCal字符串.
Windows Phone 7是否支持从约会生成iCal的库?
我尝试过DDay.iCal,但它不适用于Windows Phone 7. 解决方法
我没有找到特定于Windows Phone 7的库,但编写自己的类来生成iCal文件应该不会太难,因为毕竟iCal只是文本.
The RFC is quite a dense read,但使用一些在线参考文献
like this one并查看一些示例iCal文件应该足以开始.以维基百科的iCal文件为例,例如:
BEGIN:VCALENDAR VERSION:2.0 PRODID:-//hacksw/handcal//NONSGML v1.0//EN BEGIN:VEVENT UID:uid1@example.com DTSTAMP:19970714T170000Z ORGANIZER;CN=John Doe:MAILTO:john.doe@example.com DTSTART:19970714T170000Z DTEND:19970715T035959Z SUMMARY:Bastille Day Party END:VEVENT END:VCALENDAR 所以请注意你BEGIN和END一个VCALENDAR,以及其中的一个VEVENT,它有一些必需的字段(比如UID).唯一需要注意的是规范要求分解超过75个八位字节的行,因此您可以使用this stack overflow question中的此方法来处理长文本的字段: Private Function RFC2445TextField(ByVal LongText As String) As String LongText = LongText.Replace("","") LongText = LongText.Replace(";",";") LongText = LongText.Replace(",",",") Dim sBuilder As New StringBuilder Dim charArray() As Char = LongText.ToCharArray For i = 1 To charArray.Length sBuilder.Append(charArray(i - 1)) If i Mod 74 = 0 Then sBuilder.Append(vbCrLf & " ") Next Return sBuilder.ToString End Function 该函数基本上转义所有必需的转义字符,并每74个字符插入一个换行符/空格. 祝你好运,玩得开心! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |