日本語プログラミング言語なでしこの公式掲示板

なでしこ の 掲示板

トップ 新規 検索

2024-07-02 23:31:29

Re①:EXIF データ(撮影時刻)の抽出

hihiro さん

EXIF データ(撮影時刻)の抽出をするには、下記の箇所を(元)から(変更)に変えればできると思います。

   #(元)ここから

    対象フォルダ&対象のファイル更新日時    #ここを下記のように変更する
    それを"[/: ]"で正規表現区切る
    それを"年,月,日,時,分,秒"へ変数分配

   #ここまで
   

   #(変更)ここから

    対象フォルダ&対象からEXIFタグ取得     #EXIFタグ取得
    それは、それ@「DateTimeOriginal」    #撮影時刻取得
    それを"[/: ]"で正規表現区切る       #"[/: ]"のスぺースは半角
    それを"年,月,日,時,分,秒"へ変数分配

   #ここまで




デジカメなどで撮影したファイルのリネームについてお伺いします。

例....
元のファイル名 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文字削除
    それを元ファイル番号へ代入

    変更名=「{月}{日}_{時}{分}{秒}_{イニシャル}_{元ファイル番号}」
    対象フォルダ&対象から対象フォルダ&変更名へファイル名変更

  「完了」と言う

  # 次に、続けるかどうかを尋ねる。

  「続けますか?」と二択
  もしそれがはいと等しいならば
    続ける
  違えば
    抜ける        # ここまでを「必要の間」で繰り返す

終わる

....構文ココまで


解決策がございましたらご教示願います。



(編集パスワード送信)


テキスト表示



子記事

親記事 (No.1941)
返信した記事(元) (No.1941)

この内容(No.1942)に返信

この内容(No.1942)をダウンロード

この内容(No.1942)のテキスト表示





www.eznavi.net