中获取Linux上的当前时区

中获取Linux上的当前时区

本文介绍了如何在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上的当前时区的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-12 15:46