首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Delphi FormatDateTime异常

Delphi FormatDateTime异常
EN

Stack Overflow用户
提问于 2011-10-19 17:13:08
回答 1查看 1.6K关注 0票数 0

对于CSV文件的每一行,我的应用程序需要调用一个方法,该方法读取每个变量,并使用GetDataItem方法将其中一些变量写到表中。例如:

代码语言:javascript
复制
Var
Item: String;
Tmp: String;
Rdate: String;
TmpDateTime: TDateTime;

begin
Table1.Append'
Tmp := GetDataItem(Data, Item); {Ignore}
Tmp := GetDataItem(Data, Item); {Ignore}
Tmp := GetDataItem(Data, Item); {Members ID}
Table1.FieldByName('Member ID').AsString := UpperCase(Tmp);
TmpDateTime := StrToDateTime(etDataItem(Data, Item));
Table1.FieldByName('Arrival Date').AsString := FormatDateTime('dd/mm/yyyy',TmpDateTime);
Table1.FieldByName('Arrival Time').AsString := FormatDateTime('hh:mm:ss',TmpDateTime);
...
Table1.Post;

这很好用,除了我还需要从DateTime戳以yyyymmdd格式生成一个ReverseDate。然而,任何再次使用时间戳变量的尝试似乎都会抛出一个异常。

代码语言:javascript
复制
RDate := FormatDateTime('yyyy',TmpDateTime) + FormatDateTime('mm',TmpDateTime) + FormatDateTime('dd',TmpDateTime);

代码语言:javascript
复制
RDate := FormatDateTime('yyyymmdd',TmpDateTime);

我尝试过复制DateTime变量并对其进行处理,或者拆分DateTime字符串,但似乎任何进一步的操作都会在运行时抛出异常。

编辑:抱歉,在我的XP机器上,我现在得到了一个异常:

代码语言:javascript
复制
EAccessViolation in the module 'ImpWintacs.exe' at 000749DA. Access violation at address "000749DA" in module 'ImpWintacs.exe'. Read of address 00C1FDF8.

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-20 17:25:04

我用来从CSV中读取下一个变量的方法,将字符一直读到下一个逗号。CSV中的最后一个变量后面没有逗号。因为我不需要最后一个变量,所以我选择不读它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7818996

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档