怎么在java里获取带有毫秒的时间

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么在java里获取带有毫秒的时间相关的知识,希望对你有一定的参考价值。

1.

long java.util.Date.getTime()

Returns the number of milliseconds since January 1, 1970, 00:00:00 GMT
represented by this Date object.

如上JDK文档说,在Date对象上用getTime()获得自1970年1月1日以来的毫秒数。

2.

System.currentTimeMillis(); 这个方法获取当前时间的毫秒数。

3.

以下实例代码把通过毫秒数相减算的目前距2014-10-01 00:00:00的天数。

public class Test 

public static void main(String[] args) throws ParseException 
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String start="2014-10-01 00:00:00";
//得到毫秒数
long timeStart=sdf.parse(start).getTime();
long justNow =System.currentTimeMillis();
//两个日期想减得到天数
long dayCount= (justNow-timeStart)/(24*3600*1000);
System.out.println(dayCount);

输出

25

参考技术A 用Date的getTime方法来获取
public static void main(String[] args)
// TODO Auto-generated method stub
Date dt= new Date();
Long time= dt.getTime();//这就是距离1970年1月1日0点0分0秒的毫秒数
System.out.println(System.currentTimeMillis());//与上面的相同
参考技术B Date date = new Date();
Long tmm = date.getTime();
参考技术C new java.util.Date().getTime(); 参考技术D import java.text.SimpleDateFormat;
import java.util.Date;

public class Test

public static void main(String[] args)
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SS");
String res = sdf.format(new Date());
System.out.println(res);

请问在C语言里怎么获取当前时间和日期(精确到毫秒)?

先申明下,这个是我转百度知道的,经常BAIDU一下,就OK了
#include <stdio.h>
#include <time.h>

void main ()

time_t rawtime;
struct tm * timeinfo;

time ( &rawtime );
timeinfo = localtime ( &rawtime );
printf ( "\007The current date/time is: %s", asctime (timeinfo) );

exit(0);


=================
#include <time.h> -- 必须的时间函数头文件
time_t -- 时间类型(time.h 定义)
struct tm -- 时间结构,time.h 定义如下:
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;

time ( &rawtime ); -- 获取时间,以秒计,从1970年1月一日起算,存于rawtime
localtime ( &rawtime ); -- 转为当地时间,tm 时间结构
asctime ()-- 转为标准ASCII时间格式:
星期 月 日 时:分:秒 年
=========================================
你要的格式可这样输出:
printf ( "%4d-%02d-%02d %02d:%02d:%02d\n",1900+timeinfo->tm_year, 1+timeinfo->tm_mon,
timeinfo->tm_mday,timeinfo->tm_hour,timeinfo->tm_min,timeinfo->tm_sec);

就是直接打印tm,tm_year 从1900年计算,所以要加1900,
月tm_mon,从0计算,所以要加1
其它你一目了然啦。
参考技术A #include <windows.h>

int main()


SYSTEMTIME lpsystime;
GetLocalTime(&lpsystime);
printf("%u:%u:%u:%u:%u:%u:%u:%u\n",lpsystime.wYear,lpsystime.wMonth,
lpsystime.wDayOfWeek,lpsystime.wDay,lpsystime.wHour,lpsystime.wMinute,
lpsystime.wSecond,lpsystime.wMilliseconds);
getchar();
return 0;
参考技术B clock_t t1,t1;
t1=clock();
..
t2=clock();
(t2-t1)/18.2的结果是秒,不过这是小数,可以得到毫秒级
参考技术C 你试试下面的程序:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()

clock_t start, finish;

double elapsed_time;

start=clock();
//do sonething ...
finish=clock();

elapsed_time = finish-start;


我在VC++ 6.0下运行,可以得到以毫秒为单位的计时

以上是关于怎么在java里获取带有毫秒的时间的主要内容,如果未能解决你的问题,请参考以下文章

请问在C语言里怎么获取当前时间和日期(精确到毫秒)?

JAVA里判断某时间是否在当天中

java怎么获取当前系统时间 毫秒数

java中怎么给在map里取出来的时间增加一分钟?

java 怎么获取指定时间的毫秒值如(2012-5-5)

Java获取时间戳精确到年月日时