You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在FreeMarker中基于日期获取ISO 8601年度周数

在FreeMarker中获取日期的年度周数

FreeMarker没有直接提供获取年度周数的内置工具,但可以通过日期格式化语法轻松实现需求。

实现步骤

  1. 正确解析日期字符串:将输入的字符串日期转换为FreeMarker的date类型。如果日期格式(如dd.MM.yyyy)与默认解析格式不符,需指定解析模式:
    <#assign aDate = theDate?date("dd.MM.yyyy")>
    
  2. 格式化输出周数:使用?string配合特定模式字符串生成目标格式:
    ${aDate?string["'Week' ww 'of' yyyy"]}
    

格式符号说明

  • ww:两位数字的年度周数(若允许单数字周数,改用w)。
  • yyyy:四位完整年份。
  • 单引号包裹的文本(如"Week"和"of")会直接输出,不会被解析为格式占位符。

示例验证

输入日期字符串07.03.2023,执行上述代码后将输出:Week 10 of 2023,完全匹配需求。

补充说明

周数计算遵循ISO标准:以周一为一周的第一天,当年第一周需包含至少4天。

内容的提问来源于stack exchange,提问作者tobor159

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 09:35:07