无法使用Java项目中的JMatI / O库将红色的.mat文件

时间:2019-02-04 09:43:23

标签: java matlab

我正在尝试在Java项目中使用JMatI / O库读取.mat文件,但是当我创建MatFileReader的实例时,它将引发异常,并且我不知道这可能是问题所在。这是代码:

public class signalSource {

    public static String filePath = "aaaaaaa.mat";

    public static void main (String[] args) {
        MatFileReader mfr = null;

        try {
            mfr = new MatFileReader(filePath);
        } catch (Exception e) {
            System.out.println("Error reading .mat file");
            e.printStackTrace();
            System.exit(1);
        }
        System.out.println(mfr.getContent());
    }
}

这是错误:

com.jmatio.io.MatlabIOException: Incorrect matlab array class: single
    at com.jmatio.io.MatFileReader.readMatrix(Unknown Source)
    at com.jmatio.io.MatFileReader.readMatrix(Unknown Source)
    at com.jmatio.io.MatFileReader.readData(Unknown Source)
    at com.jmatio.io.MatFileReader.read(Unknown Source)
    at com.jmatio.io.MatFileReader.<init>(Unknown Source)
    at com.jmatio.io.MatFileReader.<init>(Unknown Source)

我想查看文件的内容,这是一组结构,每个结构包含五个变量。

1 个答案:

答案 0 :(得分:0)

JMatIO的原始版本不支持单精度矩阵。您需要使用维护的分叉(例如MatFileRW)或切换到最新的MFL项目(这是我偏颇的建议)。