首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >有没有可能在java中通过传递day name来查找天数?

有没有可能在java中通过传递day name来查找天数?
EN

Stack Overflow用户
提问于 2018-06-08 20:00:21
回答 1查看 739关注 0票数 1

我试图通过传递一个日期名称,比如,星期一或星期二,来找出它是1、2或3天的数字,因为日期数字可能会根据系统日历而改变(一些日历中的周日会在一些星期一中是开始的一天)。

我需要找出周一,周五或周日的日期,通过这些天的指数和周数。

我可以根据日期找出周数,但要通过天数(或索引),我需要根据本地系统找出准确的索引。

请告诉我这有没有可能?

代码语言:javascript
运行
复制
import java.time.LocalDateTime;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.Date;
public class HelloWorld{

     public static void main(String []args){

         String str = "2018-06-08 12:34:21";
         int sDate, eDate;
         DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); 
         LocalDateTime assignedDateTime = LocalDateTime.parse(str, formatter);
         //LocalDate assignedDate = assignedDateTime.toLocalDate();
          Instant instant = assignedDateTime.atZone(ZoneId.systemDefault()).toInstant();
          Date dateFromOld = Date.from(instant);

         Calendar calendar = new GregorianCalendar();
         calendar.setTime(dateFromOld);  

        int weekNumber = calendar.get(calendar.WEEK_OF_MONTH);
         int dayofWeek = calendar.get(Calendar.DAY_OF_WEEK);
        System.out.println(assignedDateTime);
        System.out.println(dateFromOld);
        System.out.println(weekNumber);
        System.out.println(dayofWeek);
     }
}

这是我写的代码,我可以从中找出所需日期的周数和日数。

但是,我想要通过传递日期名称来找出日期编号,但我没有找到任何方法。有一些逻辑可以找出像编写枚举函数一样的情况,但这种逻辑在某些情况下也会失败,比如如果系统的起始日期与我们的枚举函数不同。

我希望现在清楚了。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50760201

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档