java中的时间问题(50分)

  • 主题发起人 主题发起人 plainsheep
  • 开始时间 开始时间
P

plainsheep

Unregistered / Unconfirmed
GUEST, unregistred user!
在JAVA中如何得到系统时间,为格式为yyyyMMddhhmmssSSS
(例如20021223092710568,表示2002年12月23日9点27分10秒568毫秒)
 
可以在控制面板里面的区域选项改一下时间日期的显示方式!
 
不行的,取不出秒后面的三位数呀,我可以用LONG取出一个这样的数1069486890633,
是表示时间,但格式化不出来呀,请各位指教!
 
其实就是怎么样格式这样的时间的问题,
用这样的方法得到时间:long time = System.currentTimeMillis();
 
import java.*;
import java.text.*;
import java.util.*;
public class test{
public static void main(String args[]){
Calendar c=Calendar.getInstance();
Date d=c.getTime();
SimpleDateFormat f=new SimpleDateFormat("yyyy-MM-dd");
String s=f.format(d);
System.out.println(s);
}
}
 
补充一点为了显示的直观明了可以这么写
SimpleDateFormat f=new SimpleDateFormat("yyyy年-MM月-dd日 EEE hh:mm:ss");
显示结果为:2003年-04月-18日 星期五 05:23:37
 
下面的程序可以:
import java.util.*;
class CalendarDemo
{
public static void main(String args[])
{
int year,month,day,hour,minute,second,millisecond;
Calendar nowDate = Calendar.getInstance();
StringBuffer strDate = new StringBuffer();
year = nowDate.get(Calendar.YEAR);
month = nowDate.get(Calendar.MONTH)+1;
day = nowDate.get(Calendar.DAY_OF_MONTH);
hour = nowDate.get(Calendar.HOUR);
minute = nowDate.get(Calendar.MINUTE);
second = nowDate.get(Calendar.SECOND);
millisecond = nowDate.get(Calendar.MILLISECOND);
strDate.append(year);
if (month>9)
strDate.append(month);
else
strDate.append("0"+month);
if (day>9)
strDate.append(day);
else
strDate.append("0"+day);
if (hour>9)
strDate.append(hour);
else
strDate.append("0"+hour);
if (minute>9)
strDate.append(minute);
else
strDate.append("0"+minute);
if (second>9)
strDate.append(second);
else
strDate.append("0"+second);
strDate.append(millisecond);
System.out.println(strDate);

}
}
 
那个long的最后三位就是毫秒了。。。相信我。
 
多人接受答案了。
 
后退
顶部