How can I pass a variable's value from java to MATLAB's Workspace?

4 Ansichten (letzte 30 Tage)
Al Mamun
Al Mamun am 14 Dez. 2017
Kommentiert: Al Mamun am 21 Dez. 2017
Here is my Java Code. I want to pass the value of variable 'a' from java to MATLAB's Workspace. How can I do it?
public class Valuepass {
public static void main( String args[] )
{
int a=1;
System.out.println( a );
}
}

Antworten (1)

Kojiro Saito
Kojiro Saito am 19 Dez. 2017
The following is procedures how to pass variable from Java to MATLAB workspace of current session.
(1) Copy MATLAB Engine jar file from $MATLAB_INSTALL\extern\engines\java\jar\engine.jar to your Java project. This will enable your java programs to import "com.mathworks.engine".
(2) Launch MATLAB and enable sharing to Java. In MATLAB Command Window, execute
matlab.engine.shareEngine
(3) Create a java file
Valuepass.java
import com.mathworks.engine.*;
public class Valuepass {
public static void main(String args[]) throws Exception {
String[] engines = MatlabEngine.findMatlab();
MatlabEngine eng = MatlabEngine.connectMatlab(engines[0]);
int a = 1;
// This will put Java variable "a" to current MATLAB workspace
eng.putVariable("a", a);
System.out.println( a );
eng.close();
}
}
(4) Build a Java file and Valuepass.jar will be created. Then, run Java,
java -jar Valuepass.jar
(5) You will find a is stored in current MATLAB workspace.
For more detail, please refer to the following documents.

Kategorien

Mehr zu Call MATLAB from Java finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by