关于CTime Format的点滴
首先创建一个单文档应用程序,然后再VC6.0的菜单栏=》查看=》单击(ID=资源符号)=》新建=》在“名称”中写ID_TIME_EDIT,创建资源ID号;在视图类中添加CEdit m_cEdit。
接着在ClassView中,选中CXXXView右键添加虚函数OnInitialUpdate(),在OnInitialUpdate中添加如下代码
注:CXXXView代表你创建视图类。
2
3 CString strTime;
4 CTime tm;
5
6 tm=CTime::GetCurrentTime();
7 strTime=tm.Format("%Y年%m月%d日 %X");
8 m_cEdit.SetWindowText(strTime);
9
10 SetTimer(1,1000,NULL);
然后再ClassView中,选中CXXXView右键添加windows消息处理函数WM_TIMER,在OnTimer()消息中添加如下代码
2 CTime tm;
3
4 tm=CTime::GetCurrentTime();
5 strTime=tm.Format("%Y年%m月%d日 %X");
6 m_cEdit.SetWindowText(strTime);
7
下面是时间的格式化表:
字符说明
(:) 时间分隔符。在一些国别,可能用其他符号来当时间分隔符。格式化时间值时,时间分隔符可以分隔时、分、秒。时间分隔符的真正字符在格式输出时取决于系统的设置。
(/) 日期分隔符。在一些国别,可能用其他符号来当日期分隔符。格式化日期数值时,日期分隔符可以分隔年、月、日。日期分隔符的真正字符在格式输出时取决于系统设置。
c 以 ddddd 来显示日期并且以 ttttt 来显示时间。如果想显示的数值无小数部分,则只显示日期部分,如果想显示的数值无整数部分,则只显示时间部分。
d 以没有前导零的数字来显示日 (1 – 31)。
dd 以有前导零的数字来显示日 (01 – 31)。
ddd 以简写来表示日 (Sun –Sat)。
dddd 以全称来表示日 (Sunday –Saturday)。
ddddd 以完整日期表示法显示(包括年、月、日),日期的显示要依系统的短日期格式设置而定。缺省的短日期格式为 m/d/yy。
dddddd 以完整日期表示法显示日期系列数(包括年、月、日),日期的显示要依系统识别的长日期格式而定。缺省的长日期格式为 mmmm dd, yyyy。
w 将一周中的日期以数值表示(1 表星期日~ 7表星期六)。
ww 将一年中的星期以数值表示 (1 – 54)。
m 以没有前导零的数字来显示月 (1 – 12)。如果 m 是直接跟在 h 或 hh 之后,那么显示的将是分而不是月。
mm 以有前导零的数字来显示月 (01 – 12)。如果m是直接跟在h或hh之后,那么显示的将是分而不是月。
mmm 以简写来表示月 (Jan –Dec)。
mmmm 以全称来表示月 (January –December)。
q 将一年中的季以数值表示 (1 – 4)。
y 将一年中的日以数值表示 (1 – 366)。
yy 以两位数来表示年 (00 – 99)。
yyyy 以四位数来表示年 (00 – 99)。
h 以没有前导零的数字来显示小时 (0 – 23)。
Hh 以有前导零的数字来显示小时 (00– 23)。
N 以没有前导零的数字来显示分 (0 – 59)。
Nn 以有前导零的数字来显示分 (00 – 59)。
S 以没有前导零的数字来显示秒 (0 – 59)。
Ss 以有前导零的数字来显示秒 (00 – 59)。
t t t t t 以完整时间表示法显示(包括时、分、秒),用系统识别的时间格式定义的时间分隔符进行格式化。如果选择有前导零并且时间是在 10:00 A.M. 或 P.M.之前,那么将显示有前导零的时间。缺省的时间格式为 h:mm:ss。
AM/PM 在中午前以 12 小时配合大写 AM 符号来使用;在中午和 11:59 P.M.间以 12 小时配合大写 PM 来使用。
am/pm 在中午前以 12 小时配合小写 am 符号来使用;在中午和 11:59 P.M.间以 12 小时配合小写 pm 来使用。
A/P 在中午前以 12 小时配合大写A符号来使用;在中午和 11:59 P.M.间以12 小时配合大写P来使用。
a/p 在中午前以 12 小时配合小写a符号来使用;在中午和 11:59 P.M.间以 12 小时配合小写p来使用。
AMPM 在中午前以 12 小时配合系统设置的 AM字符串文字来使用;在中午和 11:59 P.M. 间以 12 小时配合系统设置的 PM 字符串文字来使用。
AMPM 可以是大写或小写,但必须和您的系统设置相配。其缺省格式为 AM/PM。