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

"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));
よろしくお願いします

 采纳的回答

michio
michio 2018-11-19
编辑:michio 2018-11-19

2 个投票

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

更多回答(1 个)

koji fukumoto
koji fukumoto 2018-11-19

0 个投票

アドバイスありがとうございました。
setDefaultFormatsも必要なくなり、ずいぶん早くなりました!

1 个评论

michio
michio 2018-11-19
何よりです。ご報告ありがとうございました。

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 日付と時刻 的更多信息

产品

版本

R2018a

Community Treasure Hunt

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

Start Hunting!