Rud*_*iel 0 delphi delphi-2010
我试图通过使用StrToDate方法将日期从字符串转换为TDate,但是当我以yyyy/mm/dd格式传递日期时,它给出了我的错误:'''2013/11/12''是不是有效的日期'.我有什么想法我做错了吗?谢谢
var
newDate: TDate;
begin
newDate := StrToDate(sDate);
end;
Run Code Online (Sandbox Code Playgroud)
StrToDate()只有string输入的重载版本使用操作系统中用户的默认语言环境设置.该错误表示该字符串与用户的日期语言环境格式不匹配.
使用重载版本StrToDate()接受TFormatSettings输入作为输入,以便您可以指定所需的格式:
var
newDate: TDate;
fmt: TFormatSettings;
begin
// TFormatSettings.Create() was added in XE
// and GetLocaleFormatSettings() was deprecated
//
// fmt := TFormatSettings.Create;
GetLocaleFormatSettings(0, fmt);
fmt.ShortDateFormat := 'yyyy/mm/dd';
fmt.DateSeparator := '/';
newDate := StrToDate(sDate, fmt);
end;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3775 次 |
| 最近记录: |