如何在日历java上以数字格式获取周当前日期

如何在日历java上以数字格式获取周当前日期,java,Java,我试图得到一周中的当前一天,但结果是当天加上一天,例如,如果是星期六,我得到7天而不是6天 我的代码: Calendar c = Calendar.getInstance(); int ddd = c.get(Calendar.DAY_OF_WEEK); String CurrentDay =String.valueOf(ddd); textView.setText(CurrentDay); 这与我的想法是一致的。本周从值为1的星期日开始。这是正

我试图得到一周中的当前一天,但结果是当天加上一天,例如,如果是星期六,我得到7天而不是6天

我的代码:

    Calendar c = Calendar.getInstance();
        int ddd = c.get(Calendar.DAY_OF_WEEK);
      String CurrentDay =String.valueOf(ddd);
      textView.setText(CurrentDay);
这与我的想法是一致的。本周从值为1的星期日开始。

这是正常的


从周日开始,1。。。周六以7结束。

您可能打算改用

星期六一周中的某一天的单身实例。这有 数值为6

@JB Nizet已经在注释中共享了用java检索此文件的代码:

int dayOfWeek = java.time.LocalDate.now().getDayOfWeek().getValue();

您可以进一步将其转换为
String
,并将其设置为您正在以类似方式使用的
textView
的文本。

我强烈建议您不要使用遗留的
java.util.Calendar
类。相反,您应该查看
java.time
包,找到适合您的用例的类。停止使用旧的、丑陋的日历。使用java.time类:int dayOfWeek=LocalDate.now().getDayOfWeek().getValue())当然周六可以得到7,因为
Calendar.Saturday=7
。参见.java8链接:谢谢,我假设op是在android(textView)上的。否则,我会建议java.time.不能将
DayOfWeek
Calendar
@Andreas一起使用,因为我不建议将它与
Calendar
一起使用