【问题标题】:Display Month in Spanish using strftime?使用strftime以西班牙语显示月份?
【发布时间】:2018-08-29 15:03:03
【问题描述】:

我正在尝试获取从 2018-09-01 到 2018 年 9 月 1 日的日期格式。 我一直在使用:

strftime(displayDate, sizeof(displayDate), "%B %d %Y", &date_obj);

它工作得很好,但是,有没有办法将月份格式化为西班牙语?

【问题讨论】:

  • 您必须先设置西班牙语的区域设置,然后再格式化日期字符串。请参阅 setlocale 函数。
  • 谢谢。会试一试。如果多次更改区域设置,是否会导致操作系统出现问题?

标签: c strftime


【解决方案1】:

strftime 函数根据当前语言环境格式化日期。所以你需要先为LC_TIME 设置语言环境:

setlocale(LC_TIME, "es_ES-UTF_8");

更多信息请参见setlocale

【讨论】:

  • 谢谢。会试一试。如果多次更改区域设置,是否会导致操作系统出现问题?
  • @JaimeT 使用setlocale 设置区域设置只会影响当前进程,并且只影响给定的区域设置类别。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-26
  • 1970-01-01
相关资源
最近更新 更多