我相信你正在寻找的uiopen()
功能。此功能将:
打开用于选择要加载到工作区的文件的对话框。
默认情况下,此功能将显示在文件资源管理器对话框with the filter set to all MATLAB® files (with file extensions *.m, *.mlx, *.mat, *.fig, *.mdl, and *.slx)
中。
但是,您也可以从CSV文件和电子表格等数据文件导入数据。只需为Files of Type
字段选择(All Files)
选项。
一旦您选择了您感兴趣的数据文件,系统会提示您另一个GUI对象,该对象预览您将要加载到MATLAB工作区中的数据。如果您对预览中显示的变量格式感到满意,只需点击GUI对象中工具箱功能区右侧的绿色复选标记,然后点击数据文件的所有内容加载到单独的变量(根据它们各自的头文件命名)。
另外,虽然这无疑是一个较长的啰嗦和丑陋的方式,如果你想使用filename
从uigetfile('*.xlsx', '*.csv')
回来,你可以使用importdata()
功能。这将输出一个struct
,其中包含数据文件中的每个变量作为单独的字段:
[filename, pathname] = uigetfile(...
{'*.csv;', 'CSV file (*.csv)';
'*.xlsx', 'Excel Spreadsheet file (*.xlsx)'; ...
'*.*', 'All Files (*.*)'}, 'Pick a File to Import');
full_filename = fullfile(pathname, filename);
[A, delimiterOut] = importdata(full_filename);