Получение часового пояса с помощью strftime - PullRequest
1 голос
/ 07 ноября 2019

Мой часовой пояс +0700, я во Вьетнаме. Я использую C ++ strftime для получения часового пояса, но результат отличается от Java SimpleDateFormat.

Мой код C ++:

tm* curr_tm;
curr_tm = localtime(&timenum);
char date_string[100];
std::string format = "'Timezone is :' %Z %z";
strftime(date_string, sizeof date_string, format.c_str(), curr_tm);
cout << date_string;//output: Timezone is : SE Asia Standard Time+0700

Мой код Java:

SimpleDateFormat formatter = new SimpleDateFormat("'Timezone is :' zzzz Z");
result = formatter.format(new Date((long) timestamp));
System.out.println(result);//output: Timezone is : Indochina Time+0700

Мой ожидаемый вывод C ++ должен быть таким же, как Java. Есть ли разница между форматом часовых поясов этих двух библиотек, и как я могу получить тот же результат, что и Java из C ++.

...