Java 如何直接调用matlib的.m文件

袁慎建@ThoughtWorks 2013-08-01 10:00:29
最近在做一个GEF的项目,刚刚接触,不是很熟悉,而此时有碰到一个与GEF不太相关的业务,就是要实现一个功能:在一个对话框中有一个选择文件的按钮,点击后出来一个文件选择对话框,选择matlib文件,就是扩展名为.m的文件,比如选择了hello.m文件,点击确定后后台代码会得到hello.m文件里面的算法执行的结果,然后根据结果在Java中用图表展示出来。这里面的问题是,hello.m文件是Java不能直接执行的,然后却要在Java中获取hello.m文件中算法执行的结果,中间或许涉及到在Java中给hello.m文件传入必要的参数,然后得到返回结果,但是这算法的执行是怎么实现的?查找了很多资料,还是没有得到答案(排除在matlib中根据hello.m生成jar文件后导入Java工程的做法,因为这不符合业务逻辑),真心求大神指点!
...全文
255 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
西电小楠 2014-08-06
  • 打赏
  • 举报
回复
可以看看这个……https://code.google.com/p/matlabcontrol/wiki/Walkthrough
西电小楠 2014-08-06
  • 打赏
  • 举报
回复
引用 1 楼 losebaby 的回复:
看下这个例子,可能有帮助。 http://jarod2008.iteye.com/blog/351159
同求……大神们都解决了么?一楼的回答也是牛头不对马嘴啊,怎么给了那么多分……
AwesomeChen 2014-02-25
  • 打赏
  • 举报
回复
请问这个问题解决了吗?最近我也遇到这个问题,查了好多资料都没有找到解决方法,同求大神指点!
可乐罐 2013-08-01
  • 打赏
  • 举报
回复
看下这个例子,可能有帮助。 http://jarod2008.iteye.com/blog/351159
双击批处理matlab.bat来运行程序。 很强大!! 实际是本包中的BIN\Win32目录当中的Matlab.exe,但得带上参数 -nojvm,不然会有几个找不到文件的提示。 MINI版matlab,无须安装,解压即用。MINI版matlab.exe启动时不检查C盘序列号. 在启动时不加载java窗口框架,去掉了不常用的toolbox和用不到的dll. 所以这个版本是个最小依赖度的Matlab,没有simulink,也没有medit.但保留了plot和figure的zoom功能. 如果自己还有啥需要用的toolbox函数,就的自己往目录里加了。两个文件,共6M多,解压后大概20M多点。 由于不加载java窗口框架,没有simulink,也没有medit,大大减少了内存的消耗,但也带来了一些不便。 下面简单介绍MINI版matlab的使用。 没有medit,这时.m文件只能用记事本编辑,存到work目录下。 如work目录已有的test.m 可在命令窗口执行test命令调用已有的test函数。 可自己添加函数和工具箱,setpath不能用,如果要新添路径需要到\toolbox\local\pathdef.m中手动添加。 如果matlab.exe不能正常启动,请双击bin目录下的matlab.exe或matlab.bat。 MINI版在只需使用简单功能时可节省内存,提高速度。 如需解决复杂的问题,建议使用全功能版。 小提示:在使用全功能版时在开始-->运行输入matlab.exe -nojvm启动程序,将不加载java窗口框架,可以减少内存的消耗,加快速度。 文件很小,不支持复杂的功能,甚至M文件编辑器都没有,但基本的应用都还在,如画图、计算等,非常不错,可以U盘携带,非常方便!

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧