1

我如何在java上获取计算机的日期,我只想要年,月,日我试图像这样获得日历

Calendar c =Calendar.getInstance();
        c.clear(Calendar.HOUR)

却不知如何应对,

4

5 回答 5

3

谷歌上的第一个链接:

import java.util.Date;
import java.text.DateFormat;
import java.text.SimpleDateFormat;

private String getDateTime() {
        DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        Date date = new Date();
        return dateFormat.format(date);
    }
于 2012-07-01T15:32:30.877 回答
2

试试这一行代码.....

// 打印 01-07-2012

 System.out.println(new SimpleDateFormat("dd-MM-YYYY").format(new Date())); 

// 打印 2012 年 7 月 1 日

System.out.println(new SimpleDateFormat("dd-MMM-YYYY").format(new Date()));
于 2012-07-01T15:48:02.507 回答
1

year/month/day您可以像这样以字符串形式获取当前日期:

String strDate = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
System.out.println(strDate);
> 2012-07-01

请注意,一个Date对象将始终包含年、月、日、小时、分钟、秒、毫秒等,并且通过调用new Date()您可以获得具有当前时间的日期对象。

如果您只需要日期的某些字段(例如,年、月和日),则需要使用格式化程序来格式化日期,例如SimpleDateFormat。检查链接以了解有关 Java 中可用的字符串格式化选项的更多信息。

于 2012-07-01T15:35:53.417 回答
1
    Calendar rightNow = Calendar.getInstance();
    int y = rightNow.get(Calendar.YEAR);
    int m = rightNow.get(Calendar.MONTH) + 1;
    int d = rightNow.get(Calendar.DAY_OF_MONTH);
    System.out.println("year "+y+"  month "+m+"  day "+d);
于 2012-07-01T15:37:54.383 回答
0

乔达时间

一些使用Joda-Time 2.4 库的示例代码。

java.util.Date 和 .Calendar 类是出了名的麻烦。避开他们。使用 Joda-Time 或 Java 8 中的新 java.time 包(受 JSR 310 定义的 Joda-Time 启发)。

时区

注意时区的使用。时区是确定日期所必需的。加尔各答和巴黎的同一时刻在日历上可能有不同的日期。如果省略时区,将应用 JVM 当前的默认时区。这意味着您的结果可能会有所不同,因此最好明确指定您想要的时区。

示例代码

String output = LocalDate.now( TimeZone.forID( "Asia/Kolkata" ) ).toString();
于 2014-09-19T08:44:38.017 回答