zoukankan      html  css  js  c++  java
  • 使用jmatio读写matlab数据文件

    /**
     * Created by hfz on 2016/2/23.
     */
    
    import com.jmatio.io.*;
    import com.jmatio.types.MLDouble;
    
    import java.io.IOException;
    import java.util.ArrayList;
    
    public class matWriterTest {
        public static void main(String[] args) throws IOException {
    
            double[][] matTest=new double[][]{{1,2,3,4},{5,6,76,34}};//生成待存储的矩阵
            MLDouble mlDouble=new MLDouble("doubleArray",matTest);//doubleArray就是matlab中上述矩阵的标示符,load()之后,在matlab中使用doubleArray访问此矩阵
            ArrayList list=new ArrayList();//由于MatFileWriter()构造函数的参数为list类型,所以需要创建一个ArrayList
            list.add(mlDouble);
            new MatFileWriter("matTest.mat",list);//将矩阵写入到.mat文件中,文件名为matTest.mat
            System.out.println("mat writer done!");
        }
    }

     还有MLInt64、MLINt32等整型类型。

    http://www.mathworks.com/matlabcentral/mlc-downloads/downloads/submissions/10759/versions/1/previews/doc/com/jmatio/types/package-summary.html

    2)以上是写.mat文件,下面是读.mat文件,读取数据是一个矩阵

    import com.jmatio.io.MatFileReader;
    import com.jmatio.types.MLArray;
    import com.jmatio.types.MLDouble;
     MatFileReader read = new MatFileReader("data/totalDataSet.mat");
    MLArray mlArray=read.getMLArray("img");//mat存储的就是img矩阵变量的内容
    MLDouble d=(MLDouble)mlArray;
    double[][] matrix=(d.getArray());//只有jmatio v0.2版本中才有d.getArray方法

     3)读取一个向量(数组)代码如下:

          MatFileReader read = new MatFileReader("data/predLab.mat");
            MLArray mlArray=read.getMLArray("predLab");//mat存储的就是img矩阵变量的内容
            MLInt64 d=(MLInt64)mlArray;
            int[] ma=d.getDimensions();//获得向量
            //int[] matrix=(d.getArray());//只有jmatio v0.2版本中才有d.getArray方法
  • 相关阅读:
    第八章 多线程编程
    Linked List Cycle II
    Swap Nodes in Pairs
    Container With Most Water
    Best Time to Buy and Sell Stock III
    Best Time to Buy and Sell Stock II
    Linked List Cycle
    4Sum
    3Sum
    Integer to Roman
  • 原文地址:https://www.cnblogs.com/lz3018/p/5210443.html
Copyright © 2011-2022 走看看