第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

在 C# 中運(yùn)行 Matlab 腳本

在 C# 中運(yùn)行 Matlab 腳本

C#
一只甜甜圈 2022-12-24 13:56:38
我有創(chuàng)建一些結(jié)果文件 output.txt 的 matlab 腳本 textcreator.m。并且有一些matlab.aplication()參考將 matlab 函數(shù)“翻譯”為 c#,并且一些代碼很難轉(zhuǎn)換為 c#,我決定只運(yùn)行我制作的腳本。using System; using System.Collections.Generic; using System.Text; MLApp.MLApp matlab = new MLApp.MLApp(); matlab.Execute(@"cd d:\textcreator.m"); 當(dāng)我在裝有 Matlab 的電腦上單擊按鈕時(shí)如何運(yùn)行 matlab 腳本 textcreator.m?
查看完整描述

1 回答

?
神不在的星期二

TA貢獻(xiàn)1963條經(jīng)驗(yàn) 獲得超6個(gè)贊

你幾乎已經(jīng)明白了,但matlab.Execute("cd d:\textcreator.m")你應(yīng)該,而不是matlab.Execute("cd d:\"),然后matlab.Execute("run textcreator.m")。所以你的代碼應(yīng)該是:


MLApp.MLApp matlab = new MLApp.MLApp(); 

matlab.Execute("cd d:\");

matlab.Execute("run textcreator.m");

我還挖出了我很久以前寫的一個(gè)簡(jiǎn)單的 MLApp 包裝器。認(rèn)為它會(huì)對(duì)你有用。


class MLWrapper

{

    private readonly MLApp.MLApp _mlapp;


    public MLWrapper(bool visible = false)

    {

        _mlapp = new MLApp.MLApp();


        if (visible)

            ShowConsole();

        else

            HideConsole();

    }


    ~MLWrapper()

    {

        Run("close all");

        _mlapp.Quit();

    }


    public void ShowConsole()

    {

        _mlapp.Visible = 1;

    }


    public void HideConsole()

    {

        _mlapp.Visible = 0;

    }


    /// <summary>

    /// Run a MATLAB command.

    /// </summary>

    /// <returns>Text output displayed in MATLAB console.</returns>

    public string Run(string cmd)

    {

        return _mlapp.Execute(cmd);

    }


    /// <summary>

    /// Run a MATLAB script.

    /// </summary>

    /// <returns>Text output displayed in MATLAB console.</returns>

    public string RunScript(string scriptName)

    {

        return Run($"run '{scriptName}'");

    }


    /// <summary>

    /// Change MATLAB's current working folder to the specified directory.

    /// </summary>

    public void CD(string directory)

    {

        Run($"cd '{directory}'");

    }


    public object GetVariable(string varName)

    {

        _mlapp.GetWorkspaceData(varName, "base", out var data);

        return data;

    }


    public void SetVariable(string varName, object value)

    {

        _mlapp.PutWorkspaceData(varName, "base", value);

    }

}


查看完整回答
反對(duì) 回復(fù) 2022-12-24
  • 1 回答
  • 0 關(guān)注
  • 149 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)