用strtodate是不行的,格式不一样,可能要自已写了,不知有没有简单一点的方法
解决方案 »
- Delphi7 的查询语句相关问题,求解!!!
- 到那里下载开发ASP.Net所需要的.net framework SDK?
- ShowModal如何在界面显示执行一些程序
- 如何得到网络不同打印机的列表?如何通过编程的方式设置某台打印机为当前打印机?
- 在ActiveX Form中使用ThemeEngine控件的问题?
- 这个C++的函数声明如何转成Pascal?
- intraweb中如何使用串口控件mscomm?
- 大家能推荐几个界面不错的小型软件么?
- 请问哪里可以下载到学习Delphi6.0的电子图书?
- 回调函数使用DELPHI
- DOS下用C语言怎么访问后台SQL Server??答出来还有分加!!
- 我在北京,有丰富开发经验,想找一份兼职程序员的工作,请帮帮忙,up有分。
const
cShortMonthNames: array[1..12] of string = (
'Jan', 'Feb', 'Mar', 'Apr',
'May', 'Jun', 'Jul', 'Aug',
'Sep', 'Oct', 'Nov', 'Dec');
var
I: Integer;
vOldShortDateFormat: string;
begin
for I := 1 to 12 do
mStr := StringReplace(mStr, cShortMonthNames[I], IntToStr(I) + '-',
[rfIgnoreCase]);
mStr := StringReplace(mStr, ',', '-', [rfReplaceAll]);
mStr := StringReplace(mStr, ' ', '', [rfReplaceAll]);
vOldShortDateFormat := ShortDateFormat;
ShortDateFormat := 'mm-dd-yyyy';
try
Result := StrToDate(mStr);
finally
ShortDateFormat := vOldShortDateFormat;
end;
end; { StrToDateEx }procedure TForm1.Button1Click(Sender: TObject);
begin
Caption := DateToStr(StrToDateEx('Apr 01, 2001'));
end;
const
cShortMonthNames: array[1..12] of string = (
'Jan', 'Feb', 'Mar', 'Apr',
'May', 'Jun', 'Jul', 'Aug',
'Sep', 'Oct', 'Nov', 'Dec');
var
I: Integer;
vOldShortDateFormat: string;
begin
for I := 1 to 12 do
mStr := StringReplace(mStr, cShortMonthNames[I], IntToStr(I) + '-',
[rfIgnoreCase]);
mStr := StringReplace(mStr, ',', '-', [rfReplaceAll]);
mStr := StringReplace(mStr, ' ', '', [rfReplaceAll]);
vOldShortDateFormat := ShortDateFormat;
ShortDateFormat := 'mm-dd-yyyy';
try
Result := StrToDate(mStr);
finally
ShortDateFormat := vOldShortDateFormat;
end;
end; { StrToDateEx }procedure TForm1.Button1Click(Sender: TObject);
begin
Caption := DateToStr(StrToDateEx('Apr 01, 2001'));
end;
1、要是你的日期是数据库取出的,那么从数据库取出时先convert(char(),字段,/*101-112随你取个但要保证delphi能处理,如:112为YYYYMMDD格式,这样可以直接用d中的转换函数*/)转化。
2.将Delphi日历控件格式设置成:YYYY-MM-DD格式,这样比较好处理。要是以后安装在客户机上,也要有相应的格式。
PS:要是你自己写你说得那种格式的日期的话,估计是浪费!