编译 uigetfile 函数和导入数据时遇到问题 ||Matlab
Troubles compiling uigetfile function and importdata ||Matlab
我完成了一段很长的 Matlab 代码,它在 Matlab 中运行得非常完美。
现在我正在尝试编译该应用程序,以便在其他计算机上将其用作 .exe 文件。
相关代码:
[FileName,PathName] = uigetfile('*.CSV','Select the data file');
delimiterIn = ',';
headerlinesIn = 11;
A = importdata(FileName,delimiterIn,headerlinesIn); % A becomes a 1x1 struct containing data, textdata and colheaders
代码导入 .CSV
文件。
uigetfile
工作得很好,因为我使用 [FileName,PathName]
。但是在第 4 行 A = importdata(FileName,delimiterIn,headerlinesIn);
代码停止工作,我收到以下错误消息:
Unable to open File.
Error in => name_of_my_program.m line 4
有什么办法解决这个问题吗?我不能在代码中做太多更改,因为变量 A.data
和 A.headliners
在代码中被大量使用。
我是不是用错了importdata
功能? importdata
函数是否不适用于已编译的应用程序?
csvread
istead of importdata
确实有效,但如上所述,我正在寻找一个解决方案,我不需要更改我的长代码中的所有变量。所以输出必须是包含 A.data
、A.textdata
和 A.colheaders
的 1x1 struct
我在
中使用 MATLAB R2017a 和应用程序编译器
编译后的应用程序可能 运行 不在与输入文件相同的文件夹中,因此您应该更新代码以使用 fullfile:
生成完整路径文件名
[FileName,PathName] = uigetfile('*.CSV','Select the data file');
delimiterIn = ',';
headerlinesIn = 11;
if FileName == 0; return; end
Filename = fullfile ( PathName, FileName );
A = importdata(Filename,delimiterIn,headerlinesIn); % A becomes a 1x1 struct containing data, textdata and colheaders
我完成了一段很长的 Matlab 代码,它在 Matlab 中运行得非常完美。 现在我正在尝试编译该应用程序,以便在其他计算机上将其用作 .exe 文件。
相关代码:
[FileName,PathName] = uigetfile('*.CSV','Select the data file');
delimiterIn = ',';
headerlinesIn = 11;
A = importdata(FileName,delimiterIn,headerlinesIn); % A becomes a 1x1 struct containing data, textdata and colheaders
代码导入 .CSV
文件。
uigetfile
工作得很好,因为我使用 [FileName,PathName]
。但是在第 4 行 A = importdata(FileName,delimiterIn,headerlinesIn);
代码停止工作,我收到以下错误消息:
Unable to open File.
Error in => name_of_my_program.m line 4
有什么办法解决这个问题吗?我不能在代码中做太多更改,因为变量 A.data
和 A.headliners
在代码中被大量使用。
我是不是用错了importdata
功能? importdata
函数是否不适用于已编译的应用程序?
csvread
istead of importdata
确实有效,但如上所述,我正在寻找一个解决方案,我不需要更改我的长代码中的所有变量。所以输出必须是包含 A.data
、A.textdata
和 A.colheaders
1x1 struct
我在
中使用 MATLAB R2017a 和应用程序编译器编译后的应用程序可能 运行 不在与输入文件相同的文件夹中,因此您应该更新代码以使用 fullfile:
生成完整路径文件名[FileName,PathName] = uigetfile('*.CSV','Select the data file');
delimiterIn = ',';
headerlinesIn = 11;
if FileName == 0; return; end
Filename = fullfile ( PathName, FileName );
A = importdata(Filename,delimiterIn,headerlinesIn); % A becomes a 1x1 struct containing data, textdata and colheaders