本文介绍了如何在C ++中获取Linux上的当前时区的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
目前我正在使用Strftime来获取我的机器在Windows中的时区。但是在Linux中,它只提供像(IST)这样的短时区字符串,但我需要(印度标准时间)。在windows中,相同的api给出了长时区字符串。
下面是我用于linux和windows的代码。
strftime( buff,sizeof buff,%Z,&tnow);
提前致谢。
Hi,
Currently i am using Strftime to get the timezone of my machine in windows. But in linux it gives only short timezone string like (IST) but i need (Indian standard time). In windows the same api give the long timezone string.
Below is the code i am using for both linux and windows.
strftime( buff, sizeof buff, "%Z" , &tnow );
Thanks in advance.
推荐答案
#include
#include <iostream>
using namespace U_ICU_NAMESPACE;
TimeZone* tz = TimeZone::createDefault();
UnicodeString us;
std::string s;
tz->getDisplayName(us);
us.toUTF8String(s);
std::cout << "Current timezone: " << s << '\n';
delete tz;
这篇关于如何在C ++中获取Linux上的当前时区的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!