現在日時の文字列を取得する方法について

172 views (last 30 days)
koji fukumoto
koji fukumoto on 19 Nov 2018
Commented: michio on 19 Nov 2018
"yyyyMMddHHmmssSSS"というフォーマットで、現在日時の文字列型データを生成する、最も効率的な方法について教えてください。
今は以下のようなコードを書いているのですが、もっと高速化できないでしょうか?
datetime.setDefaultFormats('default','yyyy MM dd HH mm ss SSS');
dt = datetime('now');
nowDtAry = str2num(string(dt));
curDatetime = sprintf("%04d%02d%02d%02d%02d%02d%03d", nowDtAry(1), nowDtAry(2), nowDtAry(3), nowDtAry(4), nowDtAry(5), nowDtAry(6), nowDtAry(7));
よろしくお願いします

Accepted Answer

michio
michio on 19 Nov 2018
Edited: michio on 19 Nov 2018
datestr 関数が良いかと。
dt = datetime('now');
DateString = datestr(dt,'yyyyMMddHHmmssFFF');
でいかがでしょうか?
ドキュメンテーションを検索するのもよいですが、datetime 型など特定のオブジェクトやデータ型に使える関数(メソッド)を見つけるのに(個人的に)よく使う方法は、methods コマンドです。参考まで。
methods(dt)

More Answers (1)

koji fukumoto
koji fukumoto on 19 Nov 2018
アドバイスありがとうございました。
setDefaultFormatsも必要なくなり、ずいぶん早くなりました!
  1 Comment
michio
michio on 19 Nov 2018
何よりです。ご報告ありがとうございました。

Sign in to comment.

Categories

Find more on 日付と時刻 in Help Center and File Exchange

Products


Release

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!