这个日期的格式的问题怎么办啊?大家可不可以帮帮我啊!!!

时间:2021-05-04 08:33:43
在做查询的时候,有两个DatetimePicker,当选择了一个日期范围后,点“查询”按钮就会出现范围之内的数据,但为什么只要WIN98的系统日期格式不是"yyyy-mm-dd",数据就不会出来呢?在数据录入的时候用的是"yyyy-mm-dd"和"yyyy-m-d"等多种格式,我现在想点了“查询”按钮后,程序能够正确的找到数据,或者是在程序开始运行的时候就能够把WIN98的系统日期格式转化为“YYYY-MM-DD”,请问各位大虾我该怎么实现这个功能啊???!!!!请说的具体一点可以吗(最好有代码)?先来先得分!

12 个解决方案

#1


日期数据存储是浮点数,没有什么字符格式问题;
关键是你转换成什么串格式;

#2


查询以前用下列语句:
date1:=formatdatetime('yyyy-mm-dd',DatetimePicker1.datetime);
date2:=formatdatetime('yyyy-mm-dd',DatetimePicker2.datetime);

#3


用formatdatetime('YYYY-mm-dd',datetimepicker1.datetime);转换

#4


可以说的具体一点吗?比如date1和date2是什么数据类型,是String还是Tdatetime还是TDTDatetime?

#5


在初始化时或查询前将系统变量ShortDateFormat赋值为‘YYYY-MM-DD’,即可满足你的要求,又不影响别的程序的日期格式

#6


在初始化时或查询前将系统变量ShortDateFormat 赋值为‘YYYY-MM-DD’,即可做工倒代码简结,又不影响别的程序的日期格式

#7


可不可以说的清楚一点,到底Date1和Date2是属于什么类型呢?

#8


对于时间的处理,上面说的是正确的!
因为在你的系统中只默认了'yyyy-mm-dd'的格式

#9


var
  MDate:TDatetime;
  MStr:string;

MStr:=formatdatetime('YYYY-mm-dd',MDate);获取年月日
formatdate();
formattime();
你试一试吧,其实很简单的。

#10


有日期型变量的,每个日期都有对应的实数。但要转换过来我想用字符串转换比较快吧。
var 
  MDate:TDateTime;
  S:string;
s:=FormatDatetime('yyyy-mm-dd',MDate);
   FormatDate();
   FormatTime();
你试一试,其实很简单的。

#11


初始化 ShortDateFormat 的值为 'yyyy-mm-dd'就可以啦。

#12


同意楼上的!

#1


日期数据存储是浮点数,没有什么字符格式问题;
关键是你转换成什么串格式;

#2


查询以前用下列语句:
date1:=formatdatetime('yyyy-mm-dd',DatetimePicker1.datetime);
date2:=formatdatetime('yyyy-mm-dd',DatetimePicker2.datetime);

#3


用formatdatetime('YYYY-mm-dd',datetimepicker1.datetime);转换

#4


可以说的具体一点吗?比如date1和date2是什么数据类型,是String还是Tdatetime还是TDTDatetime?

#5


在初始化时或查询前将系统变量ShortDateFormat赋值为‘YYYY-MM-DD’,即可满足你的要求,又不影响别的程序的日期格式

#6


在初始化时或查询前将系统变量ShortDateFormat 赋值为‘YYYY-MM-DD’,即可做工倒代码简结,又不影响别的程序的日期格式

#7


可不可以说的清楚一点,到底Date1和Date2是属于什么类型呢?

#8


对于时间的处理,上面说的是正确的!
因为在你的系统中只默认了'yyyy-mm-dd'的格式

#9


var
  MDate:TDatetime;
  MStr:string;

MStr:=formatdatetime('YYYY-mm-dd',MDate);获取年月日
formatdate();
formattime();
你试一试吧,其实很简单的。

#10


有日期型变量的,每个日期都有对应的实数。但要转换过来我想用字符串转换比较快吧。
var 
  MDate:TDateTime;
  S:string;
s:=FormatDatetime('yyyy-mm-dd',MDate);
   FormatDate();
   FormatTime();
你试一试,其实很简单的。

#11


初始化 ShortDateFormat 的值为 'yyyy-mm-dd'就可以啦。

#12


同意楼上的!