作者zxvc (zxvc)
看板MATLAB
标题Re: [问题] eval函数里的' '符号运用问题
时间Sun Jul 9 14:42:42 2006
※ 引述《youngswallow (swallow)》之铭言:
: 假设我要读取一堆档案
: load c:\a1.txt
: load c:\a2.txt
: load c:\a3.txt
: .....等
: 如果我用eval函数的话要怎麽写呢
: 我只可以想到这样写
: for i = 1:n
: eval(['load c:\a' num2str(i) '.txt' ])
: end
: 不过这样写法行不通
请问你的txt档的格式是如何?
你当初如果是用MATLAB的save指令把Workspace变数存到txt档,
请问你有没有加上『ascii』?
如果没有那代表你是把它存成『Binary MAT-file』。
可是MATLAB的load这个指令,
它会把副档名为『txt』的档案视为ASCII coded的文字档,
而副档名为『mat』的档案视为『Binary MAT-file』的档案。
如果你资料的格式应该是MAT-file,
那麽你却用ASCII的方式load当然汇出错。
如果你是以上的情形的话,请程式码修改如下:
eval(['load -mat c:\a' num2str(i) '.txt' ])
告诉load,你的txt档应该是MAT-file。
如果你想要避免这个问题,你在save的时候请不要加上副档名。
比如说:save abc
那麽Workspace里的变数就会以MAT-file的形式存到abc.mat档里。
如果你的txt并不是由save指令而来的,那这种情况又要另当别论。
: 有人会吗?
: 请不吝赐教
: 谢谢
--
《金刚经》
又念过去於五百世,作忍辱仙人,於尔所世,无我相、无人相、无众生相、无寿者相。
http://web.cc.ncu.edu.tw/~93501025/jg.doc
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.115.218.133
1F:→ zxvc:详细情形请doc save与doc load 07/09 20:06