文字列に変数を埋め込む方法

169 visualizaciones (últimos 30 días)
朋貴 熊田
朋貴 熊田 el 2 de Ag. de 2021
Comentada: Atsushi Ueno el 2 de Ag. de 2021
画像を保存する際に処理で使った変数を保存するファイル名に加えたいです。
img=imread('C:/User/????.bmp');
gussigma=3
gusimg=imgaussfilt(img,gussigma);
imwrite(gusimg,'C:/User/????gussigma????.bmp')%変数gussigmaを使って保存するファイル名に埋め込みたい
ご教授お願い致します。

Respuesta aceptada

Kojiro Saito
Kojiro Saito el 2 de Ag. de 2021
Editada: Kojiro Saito el 2 de Ag. de 2021
関数sprintfを使って変数をファイル名の文字列に渡せば実現できます。
gussigmaが整数なら%d、小数もありうるなら%fを使います。%1.1fにすると整数部分を1桁、小数点以下を1桁にすることができます。
% gussigmaが整数の場合
imwrite(gusimg, sprintf('C:/User/????gussigma%d.bmp', gussigma))
% gussigmaが小数点もある場合
imwrite(gusimg, sprintf('C:/User/????gussigma%f.bmp', gussigma))
% 小数点以下を1桁だけにしたい場合
imwrite(gusimg, sprintf('C:/User/????gussigma%.1f.bmp', gussigma))
  3 comentarios
Atsushi Ueno
Atsushi Ueno el 2 de Ag. de 2021
sprintfはどうもMATLABらしからぬと思うのですが、私だけでしょうか。
imwrite(gusimg, ['C:/User/????' num2str(gussigma) '????.bmp']);
やっぱり、使い所によっては(書式設定も自由自在だし)sprintfの方が良いですね。
Atsushi Ueno
Atsushi Ueno el 2 de Ag. de 2021
もとい、num2strも書式設定ができますね。

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre 文字と文字列 en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!