我想将COleDateTime格式化为CString,所以我使用
COleDateTime dt = GetMyDateTimeObj();
dt.Format(LOCALE_NOUSEROVERRIDE, GetCurrentLocaleID());
由于我的程序是多语言,GetCurrentLocaleID为我提供了当前选择的LCID(不是在Windows中,而是在我的程序中)。 因此,上面给出了根据所选用户语言正确格式化的字符串,但它始终采用格式"日期与年份+时间与秒数"。我认为这是一个日期的短格式和时间的长格式符合Windows区域设置。
我该怎么做才能获得String - 这一年只有2个数字? - 完全没有一年? - 没有秒的时间部分?
是否有任何切换到COleDateTime::Format
,可以给我一年两位数,时间无秒,但保留LCID
指定的字段顺序和分隔符?
当然我不想更改任何windows-regional-settings来执行此操作,我不想使用任何固定格式的字符串,如_T("%d.%m.%Y %H:%M:%S")
,因为这会破坏特定于语言的字段和分隔符的顺序。< / p>
感谢您的提示和答案
米莎