java怎样将日期本土化_java – 使用JodaTime获取本地化的周号

我试图用JodaTime获取当前的周数.

在法国,周定义如下:

>星期一开始一个星期(周末在美国开始周).

>一年的第一个星期是1月4日的一周(而IMO,那是1月1日在美国的那一周,是吗?

示例:2012年1月1日是星期日.

因此,

>根据法国日历,它属于2011年第52周.

>根据美国日历,它属于2012年第1周

使用JodaTime,我发现我可以通过以下方法获取周数DateTime#getWeekOfWeekyear().

我认为通过指定正确的TimeZone,我会得到一个本地化的结果:

DateTime dtFr = new DateTime(2012,1,11,DateTimeZone.forTimeZone(TimeZone.getTimeZone("Europe/Paris")));

DateTime dtUS = new DateTime(2012,DateTimeZone.forTimeZone(TimeZone.getTimeZone("US/Arizona")));

LOGGER.info("weekYear (FR) : " + dtFr.weekyear().get());

LOGGER.info("weekOfWeekYear (FR) : " + dtFr.getWeekOfWeekyear());

LOGGER.info("weekYear (US) : " + dtUS.weekyear().get());

LOGGER.info("weekOfWeekYear (US) : " + dtUS.getWeekOfWeekyear());

输出为:

2014-03-05 11:28:08,708 - INFO - c.g.s.u.JodaTest - weekYear (FR) : 2011

2014-03-05 11:28:08,709 - INFO - c.g.s.u.JodaTest - weekOfWeekYear (FR) : 52

2014-03-05 11:28:08,709 - INFO - c.g.s.u.JodaTest - weekYear (US) : 2011

2014-03-05 11:28:08,709 - INFO - c.g.s.u.JodaTest - weekOfWeekYear (US) : 52

我曾预料到:

> weekYear(US):2012

> WeekOfWeekYear(US):1

我的代码有问题吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值