matlab 在函数之间传递文件

我用matlab2008a版本,在“当前的目录显示(currentdirectorydisplay)”那个文件夹里面建立了1个data.mat文件,比方说里面存了2个双精... 我用 matlab 2008a 版本,在“当前的目录显示(current directory display)”那个文件夹里面建立了1个 data.mat 文件,比方说里面存了 2 个双精度浮点数的数组(double array):数组A和数组B;那我现在如果在指令窗口(command window)里面输入命令:load data 的话,应该可以在命令窗口里面应用这 2 个数组。现在的问题是我要在另外的 m 文件里编写函数,这函数要应用到 data 文件里面的这 2 个数组 A、B。当然,我可以在函数的正文里面输入命令:load data ,以此来在函数里应用这个文件。但是实际上软件工程师 甲 在编写 m 文件的函数的时候,并不知道用户 乙 实际上输入的 .mat 文件的文件名,就是说不 1 定是叫 data.mat 。我的想法是在函数调用的时候把 data.mat 文件传进函数,具体地说是令 a='data' ,然后在函数里写入命令 load a 。但是实际上 matlab 的 load 命令好像不懂得用 a 来代替 data ,我那个 load a 命令好像会让函数直接去查找 a.mat 文件,实际上我只建了 data.mat 文件,只想查找 data.mat 文件,结果当然是找不到 a.mat 文件了。请问高玩们,如何写这个函数的调用、声明、打开文件的语句?
另1,不要简单的告诉我用全局变量,要用的话请具体说说全局变量怎么声明、应用、更改?
另2,我只知道输入命令 save data C -append 可以在 data.mat 文件中新增 1 个变量 C;如果直接输入命令 save data C 的话会把 data.mat 文件中的原来的所有变量抹掉,只剩下新输入的 C 变量,有没有什么简易的语句可以添加变量到文件中?
另3,建立了 1 个 .mat 文件后,在当前目录浏览器(current directory browser)中会显示该文件的条目,我如果想查看这文件里面到底记录的是什么,应该怎么看?我瞎试了 1 下,结果打开的文件头还对,但是文件正文内容就是乱码了。
展开
 我来答
ruifengcao
2011-07-02 · TA获得超过9491个赞
知道大有可为答主
回答量:3579
采纳率:33%
帮助的人:2077万
展开全部
a='data.mat'
load(a)
这样就可以了

1、如果目录下只有一个.mat的文件,可以使用dir查到这个文件的名称,然后进行读取,上面的语句也能传递数据。

2、这已经是最简单的方法了,一次也可以多写几个变量的

3、.mat文件只能只用matlab查看,是二进制的吧(好像)
更多追问追答
追问
你说的很对,虽然不够详细。
但是还有另外 2 个问题,你没回答,所以最佳答案暂时还不能给你。
追答
不就三个问题吗?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式