GetLocaleInfo和本地化

在一些系统设计中,时间日期,钱币符号等很多东西在每个国家的表示都是不同。如何让程序自动适应这些变化?

GetLocaleInfo为此提供了解决办法。

GetLocaleInfo可以获取各种数据的设置参数。配合GetDateFormat,GetTimeFormat可以获的日期、时间的本地格式化结果。

GetNumberFormat可以获取数字显示的本地格式化输出结果

以下为MiniWin部分应用中的时间显示参考代码,在中文环境下,时间会按照中文 2008/5/25 19:33:23 下午,

英文环境则为 5/25/2008 19:33:23 PM.而且随着系统时间日期格式设置的改变,你的程序也会自动调整

static  LRESULT WINAPI EpgWndProc(HWND hwnd,UINT msgID,WPARAM wParam,LPARAM lParam)
{
    
switch(msgID)
    
{
    
case WM_TIMER:
    
{
        
char sdate[128],stime[64];
        SYSTEMTIME tnow;
        GetLocalTime(
&tnow);
        GetDateFormat(LOCALE_NEUTRAL,
0,&tnow,0,sdate,64);
        GetTimeFormat(LOCALE_NEUTRAL,
/*TIME_NOSECONDS|*/TIME_FORCE24HOURFORMAT,&tnow," hh:mm:ss tt",stime,64);
        strcat(sdate,stime);
        SetDlgItemText(hwnd,IDC_DATETIME,sdate);
    }

    
break;

}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值