簡體   English   中英

如何通過Java和Matlab控件運行.m(matlab)文件?

[英]How to run a .m (matlab) file through java and matlab control?

我有2個.m文件。 一個是函數,另一個是(read.m)然后讀取函數並將結果導出到excel文件中。 我有一個Java程序,可以對.m文件進行一些更改。 更改后,我想自動執行/運行.m文件。 我已經下載了matlabcontrol.jar,我正在尋找一種方法來使用它來調用和運行read.m文件,然后再讀取該函數。 誰能幫我提供代碼? 謝謝

我已經嘗試過此代碼,但是它不起作用。

public static void tomatlab() throws MatlabConnectionException, MatlabInvocationException {


        MatlabProxyFactoryOptions options =
            new MatlabProxyFactoryOptions.Builder()
                .setUsePreviouslyControlledSession(true)
                .build();
        MatlabProxyFactory factory = new MatlabProxyFactory(options);
        MatlabProxy proxy = factory.getProxy();


        proxy.eval("addpath('C:\\path_to_read.m')");
        proxy.feval("read");
        proxy.eval("rmpath('C:\\path_to_read.m')");

        // close connection
        proxy.disconnect();

    }

基於項目Wiki中的官方教程 ,從此API開始似乎很簡單。

路徑操作可能有點棘手,但是我會嘗試將整個腳本加載到字符串中並將其傳遞給eval請注意,我沒有使用此特定Matlab庫的經驗 )。 這可以很容易地完成Files.readAllLines()例如,通過加入Files.readAllLines() )。

希望能有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM