当前位置: 技术问答>linux和unix
请教hp unix下strptime的使用
来源: 互联网 发布时间:2015-11-05
本文导语: struct tm tmpTm; strptime("20010101010101","%Y%m%d%H%M%S",&tmpTm)在solaris下可以把字符串转换为正确的时间,但是在hp unix下面这么写就不行了,在hp unix下时间中加入分隔符就可以用,如:strptime("2001-01-01 01:01:01","%Y-%m-%d %H:%M:%S",&tmpTm)...
struct tm tmpTm;
strptime("20010101010101","%Y%m%d%H%M%S",&tmpTm)在solaris下可以把字符串转换为正确的时间,但是在hp unix下面这么写就不行了,在hp unix下时间中加入分隔符就可以用,如:strptime("2001-01-01 01:01:01","%Y-%m-%d %H:%M:%S",&tmpTm)。请问,在hp unix下能否直接strptime("20010101010101","%Y%m%d%H%M%S",&tmpTm)这么处理,是不是我这么用的有什么问题?谢谢
strptime("20010101010101","%Y%m%d%H%M%S",&tmpTm)在solaris下可以把字符串转换为正确的时间,但是在hp unix下面这么写就不行了,在hp unix下时间中加入分隔符就可以用,如:strptime("2001-01-01 01:01:01","%Y-%m-%d %H:%M:%S",&tmpTm)。请问,在hp unix下能否直接strptime("20010101010101","%Y%m%d%H%M%S",&tmpTm)这么处理,是不是我这么用的有什么问题?谢谢
|
strptime跟sscanf差不多,没有明确定界的话,就得看实现了。所以用strptime("2001-01-01 01:01:01","%Y-%m-%d %H:%M:%S",&tmpTm)方式可移植性好。
|
struct tm t;
setlocale(LC_TIME, "en_US.iso88591"); //*********注意,必须注意环境变量
strptime("1:04:23 PM on 10/6/92", "%I:%M:%S %p on %D", &t);
The converted value is stored in the structure t as follows:
t.tm_sec = 23
t.tm_min = 4
t.tm_hour = 13
t.tm_mday = 6
t.tm_mon = 9
t.tm_year = 92
t.tm_wday = 2
t.tm_yday = 279
t.tm_isdst = 1
呵呵~~~接分
setlocale(LC_TIME, "en_US.iso88591"); //*********注意,必须注意环境变量
strptime("1:04:23 PM on 10/6/92", "%I:%M:%S %p on %D", &t);
The converted value is stored in the structure t as follows:
t.tm_sec = 23
t.tm_min = 4
t.tm_hour = 13
t.tm_mday = 6
t.tm_mon = 9
t.tm_year = 92
t.tm_wday = 2
t.tm_yday = 279
t.tm_isdst = 1
呵呵~~~接分