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方法
  • 相关阅读:
    springboot整合springmvc原理
    springboot Thymeleaf
    springboot 首页处理
    springboot整合Druid
    springboot 整合JDBC
    CentOS安装Mysql
    springboot 多环境切换
    springboot JSR303数据校验
    【转载】WEB架构师成长之路
    一些想法
  • 原文地址:https://www.cnblogs.com/lz3018/p/5210443.html
Copyright © 2011-2022 走看看