Matlab 将另一个m文件加载到工作区不起作用

Matlab 将另一个m文件加载到工作区不起作用,matlab,function,load,Matlab,Function,Load,我想将一个名为myfile.m的特殊m文件加载到我的工作区。这个matlab文件包含几个数组,我需要将这些数组加载到我的工作区中 --------------------------myfile.m---------------------------------- r_red=[218,2,1,12,238,106,246,14,26,77,244]; r_green=[65,61,37,247,151,217,229,235,218,2,1]; r_blue =[14,26,77,244,1

我想将一个名为myfile.m的特殊m文件加载到我的工作区。这个matlab文件包含几个数组,我需要将这些数组加载到我的工作区中

--------------------------myfile.m----------------------------------

r_red=[218,2,1,12,238,106,246,14,26,77,244];
r_green=[65,61,37,247,151,217,229,235,218,2,1];
r_blue =[14,26,77,244,164,131,119,9,222,80,61,228];

在我的工作空间中,我尝试使用这些数组来运行此代码和其他一些支持代码

addpath('D:\mydocs'); % This is the place where myfile.m is located.
load myfile.m;
当我运行这个时,我得到了以下错误。 使用加载时出错 ASCII文件D:\mydocs\keyfile.m第2行的未知文本 “红色=[218”。

我们非常感谢您就此提出的任何意见。
谢谢。

问题在于
load
用于加载存储在
.mat
文件中的二进制数据或基于文本(ASCII)的数据文件。您拥有的是m文件中的一个简单脚本,以
.m
结尾。您可以
加载
.mat
文件,但您可以
运行包含脚本的m文件:

run myfile.m;
发件人:

加载(文件名)从文件名加载数据

如果文件名是MAT文件,则load(文件名)将MAT文件中的变量加载到MATLAB®工作空间中

如果文件名是ASCII文件,则load(文件名)将创建一个双精度数组,其中包含来自该文件的数据


您的文件既不是。

问题在于,
加载
用于加载存储在
.mat
文件中的二进制数据,也用于加载基于文本(ASCII)的数据文件。您拥有的是m文件中的一个简单脚本,以
.m
结尾。您可以
加载
.mat
文件,但
运行包含脚本的m文件:

run myfile.m;
发件人:

加载(文件名)从文件名加载数据

如果文件名是MAT文件,则load(文件名)将MAT文件中的变量加载到MATLAB®工作空间中

如果文件名是ASCII文件,则load(文件名)将创建一个双精度数组,其中包含来自该文件的数据


您的文件两者都不是。

“mat”表示矩阵,而不是数学。mat文件是二进制数据;您指的是以“.m”结尾的m文件。您
加载
.mat文件,您
运行
.m文件。非常感谢您的倡议。但我真正想要的是将变量加载到我的工作区中,以便我可以使用它们。我尝试更改load myfile.mat,但甚至都不起作用。例如,在php中,使用include命令来更改文件包含的内容从一开始,它们的变量可以进一步使用。我想到了类似的事情。阅读并尝试我的答案,看看它的作用。“mat”代表矩阵,而不是数学。mat文件是二进制数据;你是指一个m文件,以“.m”结尾。您
加载
.mat文件,您
运行
.m文件。非常感谢您的倡议。但我真正想要的是将变量加载到我的工作区中,以便我可以使用它们。我尝试更改load myfile.mat,但甚至都不起作用。例如,在php中,使用include命令来更改文件包含的内容在一开始,它们的变量可以被进一步使用。我想到了类似的事情。阅读并尝试我的答案,看看它有什么作用。