通过阅读规范(http://www.ietf.org/rfc/rfc2445.txt),我的理解是“:”字符应不在文字值中进行转义,例如DESCRIPTION。
来自RFC:
“TEXT”属性值也可以 包含特殊字符 用于表示分隔符,例如a 值列表的COMMA字符 或者是SEMICOLON角色 结构化价值观为了 支持包含这些特殊内容 “TEXT”属性中的字符
值,它们必须用a来逃逸 BACKSLASH字符。一个BACKSLASH
a中的字符(US-ASCII十进制92) “TEXT”属性值必须为
用另一个BACKSLASH转义 字符。中的COMMA字符 “TEXT”属性值必须被转义 带有BACKSLASH字符
(US-ASCII十进制92)。一个SEMICOLON “TEXT”属性中的字符
值必须使用BACKSLASH进行转义 字符(US-ASCII十进制92)。 但是,“TEXT”中的COLON字符 属性值不得转义 带有BACKSLASH字符。
我问这个是因为我在Meeting Maker v8.7.1b63中因为这个字符而在Mac OS X中收到语法错误,但是对于Windows版本的软件(版本号相同)没有。我正在用我编写的软件生成的ics文件令人窒息。这是我的软件中的错误吗?
这是收到错误的iCalendar文件:
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//abc/abc//NONSGML v1.0//EN
BEGIN:VEVENT
UID:1234_abcd@abc.abc
DTSTART:20091022T133000
DTEND:20091022T150000
SUMMARY:Special Topics in Power Point
LOCATION:The Location
DESCRIPTION:Learn how to use PowerPoint as a tool to organize and pres
ent your ideas to others. Basic computer skills are required. This h
ands-on workshop will provide you with experience in the following: wh
at's new in PowerPoint 2007\, presentation basics\, working with text
\, viewing a presentation\, formatting\, finalizing a presentation and
delivering a presentation.
END:VEVENT
END:VCALENDAR
请注意描述第三行的冒号。向此冒号添加斜杠可以修复Mac上的问题,但我认为根据标准这是不正确的。
感谢您的帮助!
答案 0 :(得分:2)
这似乎是他们软件中的一个错误。
“然而,一个COLON角色 “TEXT”属性值不应该是 使用BACKSLASH字符进行转义。“
非常简单。
看看他们是否有任何补丁。 如果没有,请尝试联系他们并告诉他们。