Theformatargument consists of one or more codes; as inprintf,
the formatting codes are preceded by a percent sign (%).
Characters that do not begin with%are copied unchanged
tostrDest.TheLC_TIMEcategory of the
current locale affects the output formatting ofstrftime.(For
more information onLC_TIME, seesetlocale.) The formatting codes forstrftimeare
listed below:
%a
Abbreviated weekday name
%A
Full weekday name
%b
Abbreviated month name
%B
Full month name
%c
Date and time representation appropriate for locale
%d
Day of month as decimal number (01 – 31)
%H
Hour in 24-hour format (00 – 23)
%I
Hour in 12-hour format (01 – 12)
%j
Day of year as decimal number (001 – 366)
%m
Month as decimal number (01 – 12)
%M
Minute as decimal number (00 – 59)
%p
Current locale's A.M./P.M. indicator for 12-hour clock
%S
Second as decimal number (00 – 59)
%U
Week of year as decimal number, with Sunday as first day of week
(00 – 53)
%w
Weekday as decimal number (0 – 6; Sunday is 0)
%W
Week of year as decimal number, with Monday as first day of week
(00 – 53)
%x
Date representation for current locale
%X
Time representation for current locale
%y
Year without century, as decimal number (00 – 99)
%Y
Year with century, as decimal number
%z,%Z
Either the time-zone name or time zone abbreviation, depending on
registry settings; no characters if time zone is unknown
%%
Percent sign
As in
theprintffunction, the#flag may prefix any formatting code. In
that case, the meaning of the format code is changed as follows.
Format code
|
Meaning
|
%#a,%#A,%#b,%#B,%#p,%#X,%#z,%#Z,%#%
|
#flag is ignored.
|
%#c
|
Long
date and time representation, appropriate for current locale. For example:
"Tuesday, March 14, 1995, 12:41:29".
|
%#x
|
Long
date representation, appropriate to current locale. For example:
"Tuesday, March 14, 1995".
|
%#d,%#H,%#I,%#j,%#m,%#M,%#S,%#U,%#w,%#W,%#y,%#Y
|
Remove
leading zeros (if any).
|
Requirements
Routine
|
Required header
|
Compatibility
|
strftime
|
<time.h>
|
ANSI,
Win 98, Win Me, Win NT, Win 2000, Win XP
|
wcsftime
|
<time.h>
or <wchar.h>
|
ANSI,
Win 98, Win Me, Win NT, Win 2000, Win XP
|
Example
//
crt_times.c
/* This program demonstrates these time and date functions:
*
_time64 _ftime64 _ctime64 asctime
*
_localtime64 _gmtime64 _mktime64 _tzset
*
_strtime _strdate strftime
*
* Also the global variable:
*
_tzname
*/
#include <time.h>
#include <stdio.h>
#include <sys/types.h>
#include <sys/timeb.h>
#include <string.h>
int main()
{
char tmpbuf[128], ampm[] =
"AM";
__time64_t ltime;
struct __timeb64 tstruct;
struct tm *today, *gmt, xmas = { 0,
0, 12, 25, 11, 93 };
/* Set time zone from TZ
environment variable. If TZ is not set,
* the operating system is queried
to obtain the default value
* for the variable.
*/
_tzset();
/* Display operating system-style
date and time. */
_strtime( tmpbuf );
printf( "OS
time:/t/t/t/t%s/n", tmpbuf );
_strdate( tmpbuf );
printf( "OS
date:/t/t/t/t%s/n", tmpbuf );
/* Get UNIX-style time and display
as number and string. */
_time64( <ime );
printf( "Time in seconds since
UTC 1/1/70:/t%ld/n", ltime );
printf( "UNIX time and
date:/t/t/t%s", _ctime64( <ime ) );
/* Display UTC. */
gmt = _gmtime64( <ime
);
printf( "Coordinated universal
time:/t/t%s", asctime( gmt ) );
/* Convert to time structure and
adjust for PM if necessary. */
today = _localtime64( <ime
);
if( today->tm_hour >= 12
)
{
strcpy( ampm, "PM"
);
today->tm_hour -= 12;
}
if( today->tm_hour == 0 ) /* Adjust if midnight hour. */
today->tm_hour = 12;
/* Note how pointer addition is
used to skip the first 11
* characters and printf is used to
trim off terminating
* characters.
*/
printf( "12-hour
time:/t/t/t/t%.8s %s/n",
asctime( today ) + 11, ampm );
/* Print additional time
information. */
_ftime64( &tstruct );
printf( "Plus milliseconds:/t/t/t%u/n",
tstruct.millitm );
printf( "Zone difference in
hours from UTC:/t%u/n",
tstruct.timezone/60
);
printf( "Time zone
name:/t/t/t/t%s/n", _tzname[0] );
printf( "Daylight
savings:/t/t/t%s/n",
tstruct.dstflag ?
"YES" : "NO" );
/* Make time for noon on Christmas,
1993. */
if( _mktime64( &xmas ) !=
(__time64_t)-1 )
printf(
"Christmas/t/t/t/t%s/n", asctime( &xmas ) );
/* Use time structure to build a
customized time string. */
today = _localtime64( <ime
);
/* Use strftime to build a
customized time string. */
strftime( tmpbuf, 128,
"Today is %A, day %d of
%B in the year %Y./n", today );
printf( tmpbuf );
}
Sample Output
OS
time:
14:15:49
OS date:
02/07/02
Time in seconds since UTC 1/1/70:
1013120149
UNIX time and date:
Thu Feb 07 14:15:49 2002
Coordinated universal time:
Thu Feb 07 22:15:49 2002
12-hour time:
02:15:49 PM
Plus milliseconds:
455
Zone difference in hours from UTC:
8
Time zone name:
Pacific Standard Time
Daylight savings:
NO
Christmas
Sat Dec 25 12:00:00 1993
简单点的如下:
CString
msg1="aaaaaaaaaaa";
KillTimer(1);
CTime t = CTime::GetCurrentTime();
char szTime[8];
int nHour = t.GetHour();
int nMinute = t.GetMinute();
int nSecond = t.GetSecond();
wsprintf(szTime, "%02i:%02i:%02i", nHour,
nMinute,nSecond);//分秒一般习惯用两位表
m_edit1=szTime;
UpdateData (FALSE);
SetTimer(1, 1000,NULL);
msg1=t.Format("%d-%m-%y"); //可以看到format的功能
MessageBox(msg1);
format中参数的含义见上面的说明
源文档 <http://www.cnblogs.com/Richinger/archive/2005/04/07/133162.html>
相关推荐
以下示例展示了如何使用 `CTime::Format` 方法来格式化日期和时间: ```cpp CTime ct = CTime::GetCurrentTime(); CString str = ct.Format("%Y-%m_%d%H-%M-%S"); // 输出为:str="2006-04-2315-21-30" ``` 在这个...
MFC 常用类、成员函数、数组类、CString 类、CTime 类、CPoint 类 MFC 提供了许多有用的类和成员函数,帮助开发者快速实现各种功能。这里我们将介绍 MFC 中的一些常用类和成员函数,包括数组类、CString 类、CTime ...
3. 输出:`CTime`可以使用`Format`函数格式化输出,例如: ```cpp CString formattedTime = currentTime.Format("%Y-%m-%d %H:%M:%S"); ``` 这将返回类似于"2022-04-07 15:30:45"的字符串。 4. 转换:`CTime`可以...
`CTime`类是MFC提供的用于表示和操作日期与时间的对象,它支持各种日期时间格式以及相关的运算。 #### 2. 参数说明 - **输入参数**: - `CString strTm`:表示一个包含日期信息的字符串,该字符串的格式应为...
本文将深入探讨如何使用CTime类来获取和格式化系统当前的日期与时间,以及如何解析特定格式的日期字符串并将其转换为CTime对象,这对于任何需要处理时间数据的应用程序都至关重要。 ### CTime类的基本操作 #### 1....
可以关联一个 DateTimeCtrl 类型的变量,然后在响应事件中使用 CTime 类获取当前选择的日期和时间。例如: ```c CTime tm; m_date.GetTime(tm); CString strDate = tm.Format("%Y-%m-%d"); ``` 这段代码可以获取当前...
VC获取系统当前时间 在本节中,我们将探讨使用VC++获取系统当前时间的方法。通过调用VC++自带的CTime类,我们可以...使用VC++获取系统当前时间非常简单,我们只需要调用CTime类,并使用Format函数来格式化时间字符串。
我们可以在OnPaint()中调用CTime的成员函数获取当前时间,并使用CFont、CBrush和CDC类来绘制时间文本,使其具有特定的颜色、字体和样式。 为了使时钟实时更新,我们需要定时重绘对话框。这可以通过安装一个定时器来...
- 要显示或设置CTime对象,可以使用`CTime::Format()`方法,它可以将时间转换为可读的字符串格式。 2. **CDateTimePicker控件**: - 在资源编辑器中,你可以添加一个CDateTimePicker控件到对话框资源上,然后通过...
通过CTime::GetLocalTime或CTime::GetSystemTime可以获取当前的本地或系统时间,然后使用CTime::Format函数将其格式化为字符串。 除了基础的时钟功能,我们还可以添加额外的功能,例如设置闹钟、计时器或者显示日期...
当我们想要在MFC应用中显示当前时间时,我们需要使用CTime类和CDateTimeCtrl类来实现这一功能。以下将详细介绍这两个类以及如何在MFC应用中使用它们。 首先,`CTime`是MFC中的一个类,它代表日期和时间。我们可以...
在VS2010 MFC中,我们可以使用CTime类来处理日期和时间。CTime类提供了丰富的成员函数,用于创建、比较、操作和格式化时间。为了将世界秒转换为系统时间,我们需要以下步骤: 1. **创建CTime对象**:首先,创建一个...
m_time=CTime::GetCurrentTime();//获取当前时间日期 m_strDate=m_time.Format("%x");//格式化日期 m_strTime=m_time.Format("%X");//格式化时间 m_strDateTime=m_time.Format("%Y-%m-%d %H:%M:%S 第%W周...
通过CTime类获取和显示系统时间,使用TEXT控件展示信息,结合滚动条控件实现用户交互,以及利用CString类进行数据类型转换,这些都是MFC应用开发中常见的操作。理解并熟练运用这些知识点,将有助于提升你在Windows...
在Windows编程环境中,MFC(Microsoft Foundation Classes)是微软提供的一套C++库,它...在实际项目中,可以根据需求利用`CTime`类及其派生类`CMyTime`来处理各种日期时间相关的逻辑,实现高效且准确的时间处理功能。
在这段代码中,我们使用`CTime`的`Format`方法将时间格式化为字符串,然后将其设置到`CEdit`控件中。 总结一下,实现MFC动态显示当前时间的步骤如下: 1. 使用`CTime::GetCurrentTime()`获取当前系统时间。 2. 创建...
本篇将详细介绍两种主要的方法:使用`SYSTEMTIME`结构和`CTime`类来获取系统当前日期和时间。 首先,我们来看第一种方法——使用`SYSTEMTIME`结构。`SYSTEMTIME`是Windows API提供的一种数据结构,用于存储日期和...
2. **`CString`与`CTime`的转换**:为了将`CTime`对象转换为`CString`,我们可以使用`Format()`方法。此方法允许我们自定义时间的格式,如: ```cpp CTime timeObj; // ... 初始化timeObj CString strTime = timeObj...
在Windows环境中,还可以使用MFC库中的 `CTime` 类来获取系统时间,并通过 `GetLocalTime` 获取本地时间: ```cpp #include #include int main() { CTime tm; CString str; tm = CTime::GetCurrentTime(); ...
你可以通过调用CTime::GetLocalTime()或CTime::GetSystemTime()来获取当前的本地时间或系统时间,然后可以使用成员函数如CTime::Format()格式化输出日期和时间。 其次,获取内存信息通常涉及到Windows API。在MFC中...