Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何获取我当前的时间_Java_Datetime - Fatal编程技术网

Java 如何获取我当前的时间

Java 如何获取我当前的时间,java,datetime,Java,Datetime,导言 我想以HH:MM:SS的格式获取计算机的当前时间。虽然我尝试了很多不同的方法,但它们都给了我相同的结果 代码 long milliseconds = System.currentTimeMillis(); int seconds = (int) (milliseconds / 1000) % 60 ; int minutes = (int) ((milliseconds / (1000*60)) % 60); int hours = (int) ((milliseconds / (10

导言

我想以HH:MM:SS的格式获取计算机的当前时间。虽然我尝试了很多不同的方法,但它们都给了我相同的结果

代码

long milliseconds = System.currentTimeMillis();
int seconds = (int) (milliseconds / 1000) % 60 ;
int minutes = (int) ((milliseconds / (1000*60)) % 60);
int hours   = (int) ((milliseconds / (1000*60*60)) % 24);

System.out.println(hours +":" + minutes+ ":"+ seconds);
结果

12:42:34但我电脑的当前时间是8:42:34

我想要什么


但是时间与我的计算机的当前时间不同。为什么?

方法以UTC时间返回时间。使用实例格式化当前时区中的时间。

请尝试此代码

DateFormat dateFormat = new SimpleDateFormat("hh:mm:ss");
Date date = new Date();
System.out.println(dateFormat.format(date));  
使用
hh:mm:ss
格式获取上午/下午(1-12)的小时数。
使用
HH:mm:ss
格式以24小时格式获取小时。
有关详细信息,请尝试dis

 DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
       //get current date time with Date()
       Date date = new Date();
       System.out.println(dateFormat.format(date));

       //get current date time with Calendar()
       Calendar cal = Calendar.getInstance();
       System.out.println(dateFormat.format(cal.getTime()));
试试这个:

DateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
Calendar cal = Calendar.getInstance();
System.out.println(dateFormat.format(cal.getTime()));

使用
SimpleDateFormat
。对于那些有OO背景但想学习Java基础知识的人来说,Head First Java是一本很棒的入门书。它有一个关于多输入格式的很好的章节,包括了很多关于日期和时间的调用,以及日期和日历的使用。而且,在我看来,你的输出是由于时区。大多数毫秒呼叫是基于东部时区的。添加一些String.format呼叫是否可信?例如,日为%td,月为%tB?另外,对于单个输入,对多个格式使用<操作数?我问这个问题是因为我读过一本基础知识的书,其中讨论过日期。我读过日期大部分被日历所取代,这是你的经历吗?或者这只是一个哪一个适合的问题?我这样问是因为我读完的一本书似乎非常喜欢日历。@JeremyJohnson
Date
只是UNIX时间戳的包装<代码>日历存储
时区
信息等。“无论哪一个符合条件,都是最合适的。”鲍里斯·斯皮德,谢谢你为我澄清这一点。非常感谢