5
我需要從設備中獲取的約會中生成iCal字符串。在Windows Phone 7上是否有任何支持從約會中生成iCal的庫?Windows Phone 7 - iCal Generator - C#
我試過DDay.iCal,但它並沒有隨着Windows Phone 7的工作
我需要從設備中獲取的約會中生成iCal字符串。在Windows Phone 7上是否有任何支持從約會中生成iCal的庫?Windows Phone 7 - iCal Generator - C#
我試過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:[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個字符插入一個換行符/空格。
祝你好運,玩得開心! :)