2024-07-02 12:16:21
EXIF データ(撮影時刻)の抽出
デジカメなどで撮影したファイルのリネームについてお伺いします。 例.... 元のファイル名 DSC_8379.jpg (2024年10月8日 17時35分42秒に撮影....EXIF に記録された時刻) リネーム後のファイル名 1008_173542_abc_8379.jpg (月日_時分秒_任意のアルファベット3文字_元のファイル番号.拡張子) ....例、ここまで 例のようなリネームを下記の構文で行っています。 但しこれはファイル更新日時を参照していますが、これを EXIF データの撮影時刻を参照するようにしたいのです。 EXIF データの撮影時刻は“DateTimeOriginal”に記録されていること、なでしこは EXIF データを扱えることは分かったのですが、撮影時刻“DateTimeOriginal”だけを抽出することが出来ません。 以下構文.... # --- ファイル名“DSC_8379.jpg”(EXIF に記録された撮影日“2024年10月8日 17時35分45秒)を # --- “月日_時分秒_任意のアルファベット3文字_元のファイル番号.拡張子”に変更する 必要の間 母艦のサイズはゼロ # --- 対象となるフォルダの選択 対象フォルダ=フォルダ選択。 # --- 追加判別文字列を尋ねる 「*注意_2* 半角ローマ字のみ使うこと」と尋ねて、イニシャルに代入。 もし、イニシャルが空ならば、終わる。 # --- ファイル名変更 対象フォルダのファイル列挙を反復 対象フォルダ&対象のファイル更新日時 それを"[/: ]"で正規表現区切る それを"年,月,日,時,分,秒"へ変数分配 対象からファイル名抽出 1から4文字削除 それを元ファイル番号へ代入 変更名=「{月}{日}_{時}{分}{秒}_{イニシャル}_{元ファイル番号}」 対象フォルダ&対象から対象フォルダ&変更名へファイル名変更 「完了」と言う # 次に、続けるかどうかを尋ねる。 「続けますか?」と二択 もしそれがはいと等しいならば 続ける 違えば 抜ける # ここまでを「必要の間」で繰り返す 終わる ....構文ココまで 解決策がございましたらご教示願います。 |