怎么知道日期类型的格式?(100分)

H

hqx_zlm

Unregistered / Unconfirmed
GUEST, unregistred user!
我想知道如:日期:'2001-11-1 23:59:59',其类型为:'yyyy-mm-dd hh:nn:ss'格式,用
什么方法或属性取得?
 
你怎么获得 '2001-11-1 23:59:59'的?
一般可以通过ShortDateFormat获得。
 
帮助文件里面有,可以参考
 
日期型数据实际是以浮点型存储的。

如果需要得到字符串格式的话,可以调用格式化函数DateTimeToStr或DateTimeToString

后者可以根据自己的需要获得相应的形式,其函数声明如下:
procedure DateTimeToString(var Result: string; const Format: string; DateTime: TDateTime);

使用:DateTimeToString(str,'yyyy-mm-dd hh:nn:ss',your_time);
这样可以显示如 2002-09-11 19:37:00 的时间格式
具体可以查看帮助。很详细的。


 
sorry,刚才误会你的意思了。
以前有遇到过,好像有个系统变量(全局)表示。明天到公司查一查看。
 
哦 先谢谢huntor啦,不过还不是那样啦,我的时间是不知道格式的,要自己找出来的哦
 
时间还好办,日期不行,如果我只告诉你 01/02/03 是一个日期,你可以有任何解释.
 
不管系统是什么格式,我一般把别人的时间格式转化为我的格式,这样其实就能解决问题了
// DateSeparator := '-';
TwoDigitYearCenturyWindow:=50;
ShortDateFormat := 'yyyy-mm-dd';
mydate:=strtodate(tempstr);

DateSeparator可以取得当前时间分隔符号
 
我还是那句话,没懂你的题意。
是不是说要将字符串类型转换成时间类型?还是其他什么?
如果是字符串类型转换,那么你的字符串是怎么得来得?
FormatDataTime?DateTimeToStr?以及FieldByName('aaa').AsString?
能仔细说一下吗?
 
谢谢大家先,我再说明一下,例如:时间变量DataTime:TDataTime;这个DataTime变量值是
从数据库的时间字段得到的,可能保存有很多种我们不知道格式(yyyy-mm-dd或yyyy/mm/dd等)
的时间,现在我想把它的格式找出来,怎么做??
 
我是新手,但我感觉没有必要么找出时间的格式,就想yzhshi所说的。实在不行还可以
使用EncodeDate和DecodeDate函数来处理。首先使用DecodeDate针对时间进行解码,
再使用EncodeDate进行编码不行吗?
能不能将问题说得更明白些?
 
我明白你的意思了。
时间变量DataTime:TDataTime;
它实际的存储形式是双精度浮点型的 type TDateTime = type Double;
所以即使从数据库中得到的也是这样的值。不存在什么时间格式了。
至于用select 等查询语句显示的形如"2002-09-12"也是根据系统时间显示格式的参数转换了的。

所以数据库中实际不保存时间格式,你怎么可能得到那?

 
我想还是使用EncodeDate和DecodeDate函数来处理吧,我试过啦,可以的
 
数据库里面存放的日期时间没有格式的,
格式是用来显示的!
数据库里的datetime与delphi中的可能不同,但是应该差不多
delphi 中的tdatetime有什么格式吗?没有
要怎么显示datetime 是人定的
 
多人接受答案了。
 
顶部