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

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일

1 개 추천

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개)

카테고리

도움말 센터File Exchange에서 日付と時刻에 대해 자세히 알아보기

태그

질문:

2020년 1월 15일

댓글:

2020년 1월 16일

Community Treasure Hunt

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

Start Hunting!