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

268 ビュー (過去 30 日間)
koji fukumoto
koji fukumoto 2018 年 11 月 19 日
コメント済み: michio 2018 年 11 月 19 日
"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 日
datestr 関数が良いかと。
dt = datetime('now');
DateString = datestr(dt,'yyyyMMddHHmmssFFF');
でいかがでしょうか?
ドキュメンテーションを検索するのもよいですが、datetime 型など特定のオブジェクトやデータ型に使える関数(メソッド)を見つけるのに(個人的に)よく使う方法は、methods コマンドです。参考まで。
methods(dt)

その他の回答 (1 件)

koji fukumoto
koji fukumoto 2018 年 11 月 19 日
アドバイスありがとうございました。
setDefaultFormatsも必要なくなり、ずいぶん早くなりました!
  1 件のコメント
michio
michio 2018 年 11 月 19 日
何よりです。ご報告ありがとうございました。

サインインしてコメントする。

カテゴリ

Help Center および File Exchange日付と時刻 についてさらに検索

製品


リリース

R2018a

Community Treasure Hunt

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

Start Hunting!