1


我尝试将大型数组从 java 获取到 matlab 中。我的问题是,java程序很大,无法在matlab中运行java,所以我需要从java中导出数据并将其加载到matlab中。有人试过这个吗?

这就是我得到的结果:我编写了一个包含所有应该导出的值的类

------- Export.java -------
import java.io.Serializable;
public class Export implements Serializable {
private double[][] values;
private String description;
public Export(String description,double[][] values){
    this.description=description;
    this.values=values;
}
public String getDescription(){return description;}
public double[][] getValues(){return values;}
}
--------------------------

和一个主要方法

------- StartPoint.java -------
public class StartPoint {
public static void main(String[] args) {
    Export serial= new Export("description",new double[][]{{1,2},{3,4}});
      OutputStream file;
    try {
        file = new FileOutputStream( "object.ser" );
        OutputStream buffer = new BufferedOutputStream( file );
        ObjectOutput output = new ObjectOutputStream( buffer );
        output.writeObject(serial);
        output.close();
    } 
    catch (FileNotFoundException e) {e.printStackTrace();}
    catch (IOException e) {e.printStackTrace();}
    System.out.println("done");
    }
}
--------------------------

根据http://www.weizmann.ac.il/matlab/techdoc/matlab_external/ch_java9.html,matlab代码应该很容易,但我不明白。因此,对 matlab 代码的任何帮助都会很棒。

谢谢

4

1 回答 1

1

为了方便在 Matlab 中导入,我建议您使用MAT 文件格式编写数据。然后您将能够将文件加载到 Matlab 变量中。

于 2012-11-09T11:51:13.057 回答