Indy10 GMTToLocalDateTime问题

编码器12345

似乎IndyGMTToLocalDateTime在解码日期时不会忽略注释:

TDateTime dtDate1 = GMTToLocalDateTime("12 Mar 2015 14:03:21 -0000");
TDateTime dtDate2 = GMTToLocalDateTime("Thu, 12 Mar 2015 14:03:20 +0000 (GMT)");
TDateTime dtDate3 = GMTToLocalDateTime("Thu, 12 Mar 2015 14:03:20 +0000 (envelope-from <[email protected]>)");
TDateTime dtDate4 = GMTToLocalDateTime("Thu, 12 Mar 2015 14:03:20 +0000 ([email protected])");

UnicodeString Dt1 = DateTimeToStr(dtDate1);
UnicodeString Dt2 = DateTimeToStr(dtDate2);
UnicodeString Dt3 = DateTimeToStr(dtDate3);
UnicodeString Dt4 = DateTimeToStr(dtDate4);

前2个被正确解码。最后2个不是。括号中的部分应该被忽略,因为它只是注释,但似乎不是。

这是Indy中的错误吗?另外-是否有Indy的错误跟踪器(论坛似乎已关闭)?

雷米·勒博(Remy Lebeau)

GMTToLocalDateTime()(更具体地讲,RawStrInternetToDateTime())并不意味着接受或寻找嵌入的注释。注释不属于输入内容,必须事先删除。嵌入式注释是电子邮件的功能,但是在处理数据时将被忽略(请参阅RFC 822第3.4.3节)。

在这种情况下,调用者未删除注释,并且当检查时间戳的存在以及在小时之间是否使用用作分隔符时,'.'最后两个示例的注释中字符的存在被抛出。/分钟/秒。RawStrInternetToDateTime()':''.'

整个Indy都无法识别,更不用说处理标头中的嵌入式注释。但是,在这种情况下,我做了一些细微的调整,以RawStrInternetToDateTime()使注释不会再使时间戳解析变得混乱(尽管在解析之前,剥离注释是真正的调用者的责任)。

是的,Indy有一些错误跟踪器:

http://code.google.com/p/indyproject
(尽管Google Code已关闭,所以该代码最终将消失)。

http://indy.codeplex.com

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Indy10 GMTToLocalDateTime问题

来自分类Dev

使用Delphi,Indy10和LARAVEL PHP获取响应内容时出现问题

来自分类Dev

Indy10,IdTCPClient的IOHandler发送其他数据

来自分类Dev

什么与Indy10中的GStack.HostToNetwork()对应

来自分类Dev

使用tcp indy10进行实时音频流

来自分类Dev

如何使用Indy10 TIdIcmpClient跟踪路由?

来自分类Dev

Indy10>如何在WriteLn()调用之后等待

来自分类Dev

Delphi:从Indy9到Indy10的迁移:使用IdCustomHTTPServer和IdHTTPServer

来自分类Dev

Delphi 2007和Indy10在IdGlobal中编译错误

来自分类Dev

Delphi 2007和Indy10在IdStackWindows中编译错误

来自分类Dev

如何设置未读消息?从indy10使用delphi 7和imap

来自分类Dev

我尝试发送数据到FTP时发生INDY10流写入错误

来自分类Dev

Indy10 TCP客户端传递对发送过程的答复

来自分类Dev

Android上的Indy10。如何强制TIdUDPClient尊重GSM网络连接的BoundPort属性?

来自分类Dev

Http Post Indy10 错误 Delphi 7:创建 SSL 上下文时出错

来自分类Dev

Indy 10 HTTPS 代理

来自分类Dev

Indy 10 SSL根证书

来自分类Dev

Delphi 7 Indy 10 ioHandler

来自分类Dev

Delphi 2007和更新的Indy 10

来自分类Dev

Indy 10 TidTCPServer编码字符

来自分类Dev

Indy 10的IdSSLIOHandlerSocketOpenSSL使Delphi 5崩溃

来自分类Dev

Indy 10 IdTCPSever Readbytes加扰数据

来自分类Dev

Indy 10和sslvTLSv1_2

来自分类Dev

Windows 10 DNS问题

来自分类Dev

Windows 10内存问题

来自分类Dev

Windows 10搜索问题

来自分类Dev

Windows 10激活问题

来自分类Dev

Windows 10:蓝屏问题

来自分类Dev

Windows 10 VPN问题