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

Oracle SQL中如何在日期时间后显示CST或CDT时区标识?

在日期时间后显示CST/CDT时区标识的实现方法

以下是几种主流编程语言的实现方案,可自动根据夏令时切换显示CST或CDT:

Python 实现

方法一:使用pytz库(推荐)

pytz能自动处理夏令时切换,无需手动判断:

import datetime
import pytz

# 指定美国中部时区
central_tz = pytz.timezone('US/Central')
current_time = datetime.datetime.now(central_tz)
# 格式化字符串中%Z会自动输出CST或CDT
formatted_time = current_time.strftime('%b %d %Y %I:%M:%S %p %Z')
print(formatted_time)

方法二:手动判断夏令时(无需第三方库)

如果不想依赖第三方库,可以通过计算夏令时的起止日期来切换时区标识:

import datetime

now = datetime.datetime.now()
# 计算当年美国中部夏令时的起止日期:3月第二个周日 ~ 11月第一个周日
dst_start = datetime.datetime(now.year, 3, 1)
dst_start += datetime.timedelta(days=(6 - dst_start.weekday()))  # 调整到第二个周日
dst_end = datetime.datetime(now.year, 11, 1)
dst_end += datetime.timedelta(days=(6 - dst_end.weekday()))  # 调整到第一个周日

# 根据当前时间判断时区标识
tz_label = 'CDT' if dst_start <= now <= dst_end else 'CST'
formatted_time = now.strftime('%b %d %Y %I:%M:%S %p') + f' {tz_label}'
print(formatted_time)

Java 实现

使用Java 8+的java.time包,自动识别夏令时:

import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;

public class CentralTimeFormatter {
    public static void main(String[] args) {
        ZoneId centralZone = ZoneId.of("America/Chicago");
        ZonedDateTime currentTime = ZonedDateTime.now(centralZone);
        // 格式化模式中的z会自动输出CST或CDT
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MMM dd yyyy hh:mm:ss a z");
        System.out.println(currentTime.format(formatter));
    }
}

JavaScript 实现

利用浏览器或Node.js的Intl.DateTimeFormatAPI,自动处理时区和夏令时:

const formatOptions = {
    timeZone: 'America/Chicago',
    month: 'short',
    day: '2-digit',
    year: 'numeric',
    hour: '2-digit',
    minute: '2-digit',
    second: '2-digit',
    hour12: true,
    timeZoneName: 'short'
};

const formattedTime = new Intl.DateTimeFormat('en-US', formatOptions).format(new Date());
console.log(formattedTime);

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 17:10:33