文本 "14-SEP-07 10:00:00" 如何转为日期类型
中文版Win XP系统
var
DateTimeFormat: TFormatSettings;
ATestTime: TDateTime;
begin
DateTimeFormat.DateSeparator := '-';
DateTimeFormat.TimeSeparator := ':';
DateTimeFormat.LongDateFormat := 'DD-MMM-YY';
DateTimeFormat.ShortDateFormat := 'DD-MMM-YY';
// LongDateFormat := 'DD-MMM-YY';
// ShortDateFormat := 'DD-MMM-YY';
StrToDateTime('14-SEP-07 10:00:00', DateTimeFormat); //出错,日期格式无法识别
试了很久都不行,不知该如何设置了.
谢谢!
[解决办法]
var
DateTimeFormat: TFormatSettings;
ATestTime: TDateTime;
begin
GetLocaleFormatSettings(0,DateTimeFormat);
{以下是调用 GetLocaleFormatSettings 后,DateTimeFormat值,猜想如果把月份填成英文的,是否能成功格式化你的日期时间?
(0, 2, ',', '.', 2, '-', ':', ',', '¥', 'yyyy-MM-dd', 'yyyy'年'M'月'd'日'', '上午', '下午', 'hh:mm', 'hh:mm:ss', ('一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'), ('一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'), ('星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'), ('星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'), 0)}
//试试看设置 月份 的格式?
StrToDateTime( '14-SEP-07 10:00:00 ', DateTimeFormat);
end;
[解决办法]
那么就用个笨办法,先分割字符串,然后在EncodeDateTime好了!