ファイル名からユリアン日の取得

1 回表示 (過去 30 日間)
Ukasu
Ukasu 2020 年 1 月 15 日
コメント済み: Ukasu 2020 年 1 月 16 日
YYYY,MM,DD,hh,mm,s.ext
というファイルのユリアン日をえる方法を教えてください。
下のようにしていますがうまくいきません。
よろしくお願いします。
sdir=dir("*.ext");
filename={sdir.name};
sdirdate = cellfun(@(x) (x(1:18)), filename, 'UniformOutput', false) ;
n=1
datenum(sdirdate(n))
エラー: datenum (line 190)
DATENUM は失敗しました。
原因:
エラー: datevec (line 275)
2019,10,23,09,30,0 の日付フィールドが多すぎます。

採用された回答

Musashi Ito
Musashi Ito 2020 年 1 月 15 日
編集済み: Musashi Ito 2020 年 1 月 16 日
MATLAB には datetime 型 と呼ばれる日付と時刻を表現するデータ型があるみたいですので、そのデータ型を使用してみてはいかがでしょうか。
% テスト用の日付を含む文字列を作成
strdate = '2019,10,23,09,30,0.ext'
idx = strfind(strdate,'.ext') % 文字列から .ext の場所を特定
strdate(idx:end) = [] % 文字列から .ext を削除
% 日付 datetime 型に変換
t = datetime(strdate,'InputFormat','uuuu,MM,dd,HH,mm,s')
% 日付と時刻をシリアル日付値に変換
DateNumber = datenum(t)
  1 件のコメント
Ukasu
Ukasu 2020 年 1 月 16 日
助かりました。ありがとうございます。

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

その他の回答 (0 件)

カテゴリ

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

タグ

Community Treasure Hunt

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

Start Hunting!