2015-10-24 11 views
-1

Я хочу сохранить несколько изображений после их обработки. Я хочу, чтобы имя было оригинальным изменением имени, чтобы выглядеть так. Если исходное изображение было названо «1», а затем я хочу повернуть изображение на 90 градусов, я хочу, чтобы новое имя было «1_90.png».Matlab для переименования файла I

Используя этот код

filename1 = sprintf('%s_%d.png', filename, rotationAngle) 

1.png_90.png 

То есть результат. Почему перед файлом% d появится параметр .png? Как я могу получить заказ правильно?

+1

Что такое 'filename'? Вероятно, «1.png»? – Daniel

+2

, так как вы не опубликовали полный код, который вы использовали, не видно, что вы сделали неправильно. Меня устраивает. 'RotationAngle = 90; имя файла = '1'; filename1 = sprintf ('% s_% d.png', filename, rotationAngle) 'дает' 1_90.png' – Nasser

+0

Даниэль понял это правильно. Как вы удалите .png из исходного имени файла? – JahKnows

ответ

0

Благодаря Даниилу и Насеру. Я понял, насколько глупый вопрос: -_-. Еще новичок в этом.

filename1 = sprintf('%s_%d.png', filename(1), rotationAngle) 

1_90.png 
+0

Это решение работает только для имен файлов с длиной 1 символа, попробуйте '12.png' – Daniel

+0

всего 10 изображений. Для другого кода я сделал: filename1 = sprintf ('% s_% d.png', имя файла (1: end-4), rotationAngle) – JahKnows

1

Чтобы получить «имя» часть имени файла без расширения, используйте fileparts. Это также позволяет повторно использовать один и тот же код, например. jpg или другие файлы изображений, используя переменную для расширения вместо записи '.png'

Смежные вопросы