大写的s表示毫秒数
你的这个可以这么写
SimpleDateFormat dateFormatGmt = new SimpleDateFormat("yyyy-MM-dd aHH:mm:ss:SSS");
Systemoutprintln(dateFormatGmtformat(new Date()));
输出2014-03-04 下午18:13:05:627
这个627就是对应那个SSS,也就是当前毫秒数
当前的系统时间是由WM的使用者设置的,谁也不会设置精确到毫秒,就算设置的时间与标准时间差了很多,WM本身也无法纠正。
楼主要是精确到毫秒计时,那GetTickCount就可以了。
方法一,调用javascript获取毫秒时间。
Set sc = CreateObject("ScriptControl")scLanguage = "javascript"
t = sceval("new Date()getTime()")
MsgBox DateAdd("s", Fix(t / 1000), "1970-1-1 8:00") & "" & Right(t, 3)
方法二,用WMI方法,缺点是速度慢,获取一次时间大约需要15毫秒。
Set wmi = GetObject("winmgmts:\\\root\cimv2")For Each e In wmiExecQuery("select LocalDateTime from Win32_OperatingSystem")
t = eLocalDateTime
MsgBox Left(t, 4) & "-" & Mid(t, 5, 2) & "-" & Mid(t, 7, 2) & " " _
& Mid(t, 9, 2) & ":" & Mid(t, 11, 2) & ":" & Mid(t, 13, 2) _
& Mid(t, 15, 4)
Next
如果只计算时间间隔,用两次Timer函数,精确到八分之一毫秒。
t0=TimerMsgBox "暂停"
MsgBox "暂停了" & Timer-t0 & "毫秒"
Date dt= new Date();
Long time= dtgetTime();//这就是距离1970年1月1日0点0分0秒的毫秒数
DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。日期/时间格式化子类(如 SimpleDateFormat)允许进行格式化(也就是日期 -> 文本)、解析(文本-> 日期)和标准化。将日期表示为 Date 对象,或者表示为从 GMT(格林尼治标准时间)1970 年 1 月 1 日 00:00:00 这一刻开始的毫秒数。
DateFormat 提供了很多类方法,以获得基于默认或给定语言环境和多种格式化风格的默认日期/时间 Formatter。格式化风格包括 FULL、LONG、MEDIUM 和 SHORT。方法描述中提供了使用这些风格的更多细节和示例。
DateFormat 可帮助进行格式化并解析任何语言环境的日期。对于月、星期,甚至日历格式(阴历和阳历),其代码可完全与语言环境的约定无关。
用CTime中的GetCurrentTime获取当前的时间的值做为基准值TBase,然后用QueryPerformanceCounter取得时间差TDelta;这样系统时间就这么算:T=TBase+TDelta/1000;这是毫秒,微秒=TDelta%1000;这样就可以精确到微秒了,我就是这么算的
你试试下面的程序:
#include
#include
#include
int
main()
{
clock_t
start,
finish;
double
elapsed_time;
start=clock();
//do
sonething
finish=clock();
elapsed_time
=
finish-start;
}
我在vc++
60下运行,可以得到以毫秒为单位的计时
以上就是关于JAVA如何获取当前小时的毫秒数呢是当前小时,比如2014-03-04 下午16:00:00的毫秒数全部的内容,包括:JAVA如何获取当前小时的毫秒数呢是当前小时,比如2014-03-04 下午16:00:00的毫秒数、如何获取系统时间,能精确到毫秒级、vbs中如何取到毫秒级的时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)