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

如何将yyyymmdd格式的字符串转换为mmm-yyyy格式

日期格式转换实现方案

核心逻辑

  • 将yyyymmdd格式的字符串解析为标准日期对象
  • 再将日期对象按mmm-yyyy(英文三字母月份缩写+年份)格式输出即可

常用编程语言实现示例

Python 实现

from datetime import datetime

def yyyymmdd_to_mmmyyyy(date_str: str) -> str:
    # 解析输入的yyyymmdd字符串
    date_obj = datetime.strptime(date_str, "%Y%m%d")
    # 格式化输出目标格式
    return date_obj.strftime("%b-%Y")

# 测试用例
print(yyyymmdd_to_mmmyyyy("20240520")) # 输出结果:May-2024

JavaScript 实现

function yyyymmddToMmmyyyy(dateStr) {
    const year = dateStr.slice(0, 4);
    const month = parseInt(dateStr.slice(4, 6)) - 1;
    const dateObj = new Date(year, month);
    const monthAbbr = dateObj.toLocaleString('en-US', { month: 'short' });
    return `${monthAbbr}-${year}`;
}

// 测试用例
console.log(yyyymmddToMmmyyyy("20240520")); // 输出结果:May-2024

Java 实现

import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Locale;

public class DateConvert {
    public static String yyyymmddToMmmyyyy(String dateStr) {
        DateTimeFormatter inputFormatter = DateTimeFormatter.ofPattern("yyyyMMdd");
        LocalDate date = LocalDate.parse(dateStr, inputFormatter);
        DateTimeFormatter outputFormatter = DateTimeFormatter.ofPattern("MMM-yyyy", Locale.ENGLISH);
        return date.format(outputFormatter);
    }

    public static void main(String[] args) {
        System.out.println(yyyymmddToMmmyyyy("20240520")); // 输出结果:May-2024
    }
}

补充说明

  • 若需要输出中文月份格式,只需将对应格式化方法的 locale 切换为中文区域,输出结果会变为5月-2024这类格式
  • 实际使用时建议增加输入合法性校验,避免不符合yyyymmdd格式的输入触发报错

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 02:39:03