您的位置:首页 > 编程语言 > MATLAB

matlab读写excel并通过.bat按照顺序批处理.m文件

2017-04-04 09:54 417 查看
最近需要对一批excel进行格式的批量修改,起初想通过java语言使用excel框架来操作excel。

发现这种方式,即使做很小的修改,也需要完全把excel读入内存。

当excel很大的时候,这种方式绝对是行不通的,会造成内存溢出。

最后选用了matlab脚本程序来操作excel,发现效率高出很多。

1、对excel的操作方式

(1)java,c#等通过框架来操作:适合excel较小的时候

(2)matlab:可以操作较大的excel,不易发生内存溢出

当文件较大的时候,不要选择[NUM,TXT,RAW],可能会内存溢出,而选择:

[NUM,TXT]=xlsread(name,namesheet1,'A1:A1048576');进行部分内容的读取

2、通过批处理批量运行.m文件。直接上代码,相信大家可以很容易理解并实现:

新建.bat文件。写入以下内容:

f:
cd F:\necessory\Matlab2013B1\bin
matlab -nojvm -nodesktop -nodisplay  -r cai3
f:
cd F:\necessory\Matlab2013B1\bin
matlab -nojvm -nodesktop -nodisplay  -r cai4


-nodisplay 似乎无效,还是显示desktop;

 -nojvm, -nodesktop 不显示desktop,但会出现 command-line 窗口,不会完全没有图形界面

-r 运行 matlab cmd 命令(run),多条命令相互用分号或逗号隔开(空格不行),用双引号引起;

一条命令可以不用双引号。 这多用在批处理模式下,所运行的文件必须在matlab的启动目录下或者在其搜索路径上,且不能带有路径名和后缀名.m。

运行批处理文件后发现,两个.m文件会同时启动,出现了两个命令窗口,为了可以按照顺序依次执行.m文件,可以在以上指令中加入

 -wait选项

加上后,当第一个.m文件执行完毕后才会开始执行第二个.m文件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: