### 駄目な例
ファイル名の”.”以降の値を取得する
let pos = file_name.find('.').unwrap();
let file_extension = &file_name[(pos+1)..].to_string();
これだと、img.test.png という画像ファイルだった場合、拡張子が test.png になってしまう。
一度、ファイルを保存して、use std::path::PathBuf; を使って、ちゃんと取得する。
let pathbuf = PathBuf::from(format!("./tmp/{}", file_name));
let ext_string = pathbuf
.extension()
.unwrap()
.to_string_lossy()
.into_owned();
println!("{}", ext_string);
let ex_filename = format!("./tmp/{}", file_name);
let new_filename = format!("./tmp/nft.{}", ext_string);
fs::rename(ex_filename, new_filename).unwrap();
ファイル名に、”.”が入らないなんてのは勝手な思い込みだ。