如何在MapForce中基于XSLT2为XML的YYYYMMDD日期添加60天?
MapForce中实现YYYYMMDD格式日期加60天的方法
直接利用MapForce内置的日期处理函数,分三步完成转换:
第一步:将字符串日期转为标准日期对象
原XML中的日期是YYYYMMDD格式的字符串(如20230101),使用date-from-string()函数,指定格式参数为[Y0001][M01][D01],把字符串转成MapForce可识别的日期类型。第二步:给日期添加60天
调用add-days()函数,第一个参数传入第一步生成的日期对象,第二个参数固定填60,即可得到加60天后的日期对象。第三步:将处理后的日期转回YYYYMMDD格式
使用format-date()函数,同样指定格式参数[Y0001][M01][D01],把日期对象重新转为符合要求的字符串格式。
映射操作流程
- 在MapForce的函数面板中,依次找到
date-from-string、add-days、format-date三个函数,拖拽到映射画布上。 - 把XML源文件的日期字段节点,连接到
date-from-string的输入参数,并在函数参数面板中设置格式为[Y0001][M01][D01]。 - 将
date-from-string的输出端口,连接到add-days的第一个输入端口;在add-days的第二个输入端口手动输入数值60。 - 把
add-days的输出端口,连接到format-date的输入参数,同样设置格式为[Y0001][M01][D01]。 - 最后将
format-date的输出端口,连接到目标节点的日期字段即可。
内容的提问来源于stack exchange,提问作者PCMike
相关产品推荐
相关产品推荐

