我从阅读规范(http://www.ietf.org/rfc/rfc2445.txt)中得到的理解是,":“字符(,而不是)应该在像DESCRIPTION这样的文本值中转义。
来自RFC的:
"TEXT“属性值还可能包含用于表示分隔符的特殊字符,例如表示值列表的逗号字符或用于结构化值的分号字符。为了
支持在“文本”属性中包含这些特殊字符。
值,它们必须用反斜杠字符转义。反斜杠
“文本”属性值中的字符(US-ASCII小数点92)必须为
用另一个反斜杠字符逃跑了。中的逗号字符
"TEXT“属性值必须用反斜杠字符转义。
(美国ASCII小数点92)。"TEXT“属性中的分号字符
值必须用反斜杠字符(US小数点92)转义。但是,"TEXT“属性值中的冒号字符不应用反斜杠字符转义。
我之所以这样问,是因为我在Meeting Maker v8.7.1b63 for Mac中收到了语法错误,原因是这个字符,而不是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上的问题,但我认为根据标准,这是不正确的。
谢谢你的帮忙!
发布于 2009-10-19 18:54:47
这似乎是他们软件中的一个漏洞。
但是,“
”属性值中的冒号字符不应用反斜杠字符转义。
很简单。
看看他们有没有补丁。如果没有,试着联系他们并告诉他们这件事。
https://stackoverflow.com/questions/1590368
复制相似问题