load specific file - make name

2 次查看(过去 30 天)
I would like to choose specific files to open, without having to type the filename or select it. Specifically I have files with number 1 through 10. I would like to first use input to let me choose a number. And then I would like to load that specific file. However that doesn't work for me. Can anybody help? The filesnames are for example: 'filtered_emg_1.mat'
k = input('Please give number filtered emg file : ');
emgdata = load('filtered_emg_' k '.mat');

采纳的回答

Azzi Abdelmalek
Azzi Abdelmalek 2014-6-14
编辑:Azzi Abdelmalek 2014-6-14
k = input('Please give number filtered emg file : ');
emgdata = load(['filtered_emg_' num2str(k) '.mat']);
%or
emgdata = load(sprintf('filtered_emg_%d.mat',k))

更多回答(1 个)

Image Analyst
Image Analyst 2014-6-14
Seems not very user friendly to me. Why use such a primitive method? At the very least, use inputdlg() instead of input(). But better, why don't you have a listbox with all the files listed where the user can simply click on the filename? That would be so much nicer for your user and you can make sure that only files exiting are listed - the user won't have to worry about typing in a "missing" number. See MAGIC_GUI or Tutorial for GUIDE

类别

Help CenterFile Exchange 中查找有关 Migrate GUIDE Apps 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by