MATLAB Answers

0

ファイル名の変更方法について

Asked by Ayuta Tsuge on 31 Oct 2019
Latest activity Commented on by Ayuta Tsuge on 1 Nov 2019
例えば,YYYYMMDDhhmm.XXXXというファイルがあった時,このファイル名を取得してYYMMDDhh.mmというファイル名に自動で変換するスクリプトを作りたいのですが,方法はあるでしょうか?

  0 Comments

Sign in to comment.

1 Answer

Kazuya
Answer by Kazuya
on 31 Oct 2019
 Accepted Answer

YYYYMMDDhhmm は実際には数字が入るんでしょうか・・(日付っぽいからという推測ですが)
以下参考になれば。
ファイル名のリスト取得は(ファイルがカレントディレクトリにあると仮定)
tmp = dir("*.XXXX")
filename = {tmp.name}
で。
YYYYMMDDhhmm.XXXX => YYMMDDhh.mm は、かっこ悪いですがとりあえず
newfilename = cellfun(@(x) [x(3:10), '.', x(11:12)], filename, 'UniformOutput', false)
で。文字列の 3文字目から10文字目、間に . を入れて、11文字目、12文字目を繋げています。
ファイル名の変更は movefile 関数が使えるかもしれません。
for k=1:length(filename)
movefile(filename{k}, newfilename{k});
end

  1 Comment

Ayuta Tsuge on 1 Nov 2019
おっしゃる通り,数字で構成されるファイル名です.'年月日時分.シリアル番号' という形式で形式で1分ごとに作成されるファイル名を変更したいと考えておりました.
お早い回答ありがとうございます!

Sign in to comment.