2011-07-26 36 views

回答

3

沒有一個具體的圖書館爲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:[email protected] 
DTSTAMP:19970714T170000Z 
ORGANIZER;CN=John Doe:MAILTO:[email protected] 
DTSTART:19970714T170000Z 
DTEND:19970715T035959Z 
SUMMARY:Bastille Day Party 
END:VEVENT 
END:VCALENDAR 

所以注意你開始和結束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個字符插入一個換行符/空格。

祝你好運,玩得開心! :)