私は日付と時刻を浮動小数点数にしました。日付をISO8601からchar配列に変換する
float thedate = 20161115;
float thetime = 181011.377500;
私はISO8601日時形式に変換したい、つまり、としてファイルに書き込み、「2016-11-15T18:10:11.377500」
私は、これらの値を得ることができました
char datetimestr[64];
snprintf(datetimestr, sizeof(datetimestr), "%8.0f%f", thedate, thetime);
printf(datetimestr);
そして、これが出力します:私は、このようなstrftime
やとしてその機能を読んで「20161115181011.377500」
を次の手順を実行して、char配列の内部はこれらの数値を解析して適切に出力することができますが、そのためには特定のアーチ固有のヘッダーが必要ですか?
私は必要なものを達成するための推奨方法は何ですか?理想的にはどこでも走る方法で。
ご意見やご要望があれば、よろしくお願いいたします。
いいえ、 'strftime'は、標準Cライブラリの一部です。マニュアルページとマニュアルを読んでみてください。あなたはCライブラリのドキュメントをどこにでも見つけることができます。 –
これらの数字は、常にこの形式であることが保証されていますか? 2016年8月6日は20160806ですか?もしそうなら、それは整数の数学とprintf()です。 – tinman
@tinmanはい、これらは常にこの形式であることが保証されています。 – dangom