
你是想得到这个调用用掉的时间?
如果是这个 那这样子吧
long timeStart = SystemcurrentTimeMillis();
调用API的函数。。。。
long time = SystemcurrentTimeMillis() - timeStart;
这个time是以毫秒为单位,要用秒的话,请除以1000
1,可以去MSDN查,
2,可以用GetSystemTime,也可以用MFC中的CTimte里的成员函数GetSystemTime,然后用CTime里的FORMATE函数输出:
3,这个函数在WINDOWSH里,如果要用CTime,创建控制台程序里选择MFC选项
以下给出CTime的用法,很直白,容易理解
void CurrentSystemTime()
{
CTime time = CTime::GetCurrentTime();;
CString s;
s = timeFormat(TEXT("%m/%d/%Y,%H:%M:%S"));
AfxMessageBox(s);
}
其中time 初始化为当前系统时间,然后声明一个字符串,将其格式化为
月份/日期/年份,小时:分钟:秒数
然后调用AFXMESSAGEBOX将其输出即可
MFC类可以通过包含stdafxh调用
一、步骤如下:
long currentTime = SystemcurrentTimeMillis() + 30 60 1000;
Date date = new Date(currentTime);
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String nowTime="";
nowTime= dfformat(date);
Systemoutprintln(nowTime);
二、分析:
1、获取当前时间,获取到的时间类型是long类型的,单位是毫秒
2、在这个基础上加上30分钟:currentTime +=30601000;
3、格式化时间,获取到的就是当前时间半个小时之后的时间Date date=new Date(currentTime);
4、建立时间格式化对象:
SimpleDateFormat dateFormat = new SimpleDateFormat(
"yyyy-MM-dd HH:mm:ss");
扩展资料
JDK(Java Development Kit)称为Java开发包或Java开发工具,是一个编写Java的Applet小程序和应用程序的程序开发环境。JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一些Java工具和Java的核心类库(Java API)。
不论什么Java应用服务器实质都是内置了某个版本的JDK。主流的JDK是Sun公司发布的JDK,除了Sun之外,还有很多公司和组织都开发了自己的JDK,例如,IBM公司开发的JDK,BEA公司的Jrocket,还有GNU组织开发的JDK
另外,可以把Java API类库中的Java SE API子集和Java虚拟机这两部分统称为JRE(JAVA Runtime Environment),JRE是支持Java程序运行的标准环境
(参考资料 百度百科 Java)
1、用TextOut是能够显示出来的,你可能没注意转化格式。编译器和VC助手会提醒你TextOut(hdc,x,y,str,strlen(str))里面的str应该是char格式。
2、而你获取时间的GetLocalTime(&st)里的st是结构体SYSTEMTIME。你应该首先转化格式。可以用sprintf(str,"",)。注意加头文件include <stringh>
3、TextOut(hdc,x,y,str,strlen(""))里面的x与y是否给定了明确的值?str这个变量没有在前面声明,strlen("")里面无字符,这样输出的结果自然是零个字符,TextOut最后一个参数项是控制输出字符的个数的。你应该改为strlen(str)
当你使用strXX的时候,就应该记得加头文件<stringh>
4、你使用hdc的时候,注意要用到一个相对应的函数释放DC,这样才不容易发生内存错误。与BeginPaint()对应的是EndPaint(HWND ,PAINTSTRUCT)。
5、HDC hdc;
SYSTEMTIME st;
PAINTSTRUCT ps;
这些声明你只在传递WM_PAINT消息时才用到,所以大可不必在该消息外声明。你只要在case下面加个{},将声明和实现函数放在这个{}内就可以避开编译器报错。
typedef struct _SYSTEMTIME {
WORD wYear;
WORD wMonth;
WORD wDayOfWeek;
WORD wDay;
WORD wHour;
WORD wMinute;
WORD wSecond;
WORD wMilliseconds;
} SYSTEMTIME, PSYSTEMTIME, LPSYSTEMTIME;
你首先要明白你用来获取时间的这个结构体。
typedef unsigned short WORD;
只要你会用右键菜单的“转到XX的定义”(英文版的好像是“defined to”),只要点击一下,就会去到该结构体或变量的声明里去,你就会知道该结构体里的内容有什么,或者该类型实际上是什么类型转化而来的。
看我修正后的代码:
include <stringh>
…………
case WM_PAINT:
{
HDC hdc;
SYSTEMTIME st;
PAINTSTRUCT ps;
char str[31]="";
struct WEEK
{
char temp[10];
}wk[7]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};
GetLocalTime(&st);
hdc=BeginPaint(hwnd,&ps);
sprintf(str,"%04d-%02d-%02d %02d:%02d:%02d %s",stwYear,stwMonth,stwDay,stwHour,stwMinute,stwSecond,wk[stwDayofWeek]temp);
TextOut(hdc,10,10,str,strlen(str));
EndPaint(hwnd,&ps);
}
break;
以上就是关于调用API的响应时间全部的内容,包括:调用API的响应时间、请问c++中如何调用windows API 比如我想用到API中获得当前系统时间的函数,请给出代码谢谢诶、java获取当前时间加半小时之后的时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)