关于在delphi中时间日期的转换问题,高手进

比如我现在获取到一个时间类型为string的字符串为
August 16, 2010 15:00
请问如何能转换为datetime格式且只保留年份和月份及日期??我试过用strtodate不行,formatdatetime好像也不行,请教高手是否delphi中有其他更加方便的函数进行转换呢?

第1个回答  2010-08-21
1、将August 等英文的月份替换成对应的数字月份,并将逗号“,”删除
2、使用正则表达式进行匹配,取匹配部分进行组合成需要的日期即可

或者
将你的电脑设置成英文区域,并将日期格式设置成英文,可以使用这种形式直接获取
procedure testDate;
var
myDateTime : TDateTime;
fmt:TFormatSettings;
begin
fmt.ShortDateFormat:='mmmm dd yyyy';
myDateTime := StrToDateTime('August 16 2010 15:00');
Writeln('August 16, 2010 15:00 = ',DateTimeToStr(myDateTime));

end;
第2个回答  2010-08-17
貌似没有认识这种格式可以直接转化的函数。既然格式已经固定了,你可以按照一定的规则截取字符串并去处理它,得到你想要的年、月、日,再拼起来就OK了。方法比较笨,有好的方法再告诉你
第3个回答  2010-08-17
var DD : TDateTime ;
begin
DD := Trunc(Date);
ShowMessage(DateTimeToStr(DD));
end;本回答被网友采纳
第4个回答  2010-08-18
按照一定的规则截取字符串并去处理它
相似回答