📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

24行目: 24行目:
<br>
<br>
ISO 8601は国際標準化機構(ISO)により定められた日付と時刻の表記に関する国際規格であり、主にデータ交換の文脈で利用される。<br>
ISO 8601は国際標準化機構(ISO)により定められた日付と時刻の表記に関する国際規格であり、主にデータ交換の文脈で利用される。<br>
<br>
以下の例では、"2024-03-01T16:24:32Z"というUTCの日時 (文字列) を日本時間に変換して、"yyyy年M月d日 H時m分"という形式に変換している。<br>
<syntaxhighlight lang="c++">
#include <QDateTime>
#include <QTimeZone>
// UTCの日時を表す文字列
QString utcDateTimeStr = "2024-03-01T16:24:32Z";
// UTCの日時をQDateTimeに変換
// Qt::ISODateにZを含むことでUTCとして解釈される
QDateTime utcDateTime = QDateTime::fromString(utcDateTimeStr, Qt::ISODate);
// UTC時間を明示的に設定
utcDateTime.setTimeSpec(Qt::UTC);
// 日本のタイムゾーンオブジェクト
QTimeZone jpTimeZone("Asia/Tokyo");
// UTCから日本時間へ変換
QDateTime jpDateTime = utcDateTime.toTimeZone(jpTimeZone);
// 日本時間に変換された日時を指定のフォーマットで出力
QString formattedDateTime = jpDateTime.toString("yyyy年M月d日 H時m分");
std::cout << formattedDateTime.toStdString() << std::endl;
}
</syntaxhighlight>
<br><br>
<br><br>