C# 操作mat格式文件


准備工作:

安裝Matlab拓展包,如下兩個

 

 

 讀取:

Matrix<double> m2 = MatlabReader.Read<double>("1.mat");
Array testArray = m2.ToArray();

寫入:

//數據准備
double[,] data_two_demo = new double[10, 10];
for (int i = 0; i < 10; i++)
{
    for (int j = 0; j < 10; j++)
    {
        data_two_demo[i, j] = i * j;
    }
}
Matrix<double> m = DenseMatrix.OfArray(data_two_demo);
//注意,完成此操作后,如果要解決內存占用問題,可以提前釋放_listData和arr的內存占用
using (FileStream fs = new FileStream($"1.mat", FileMode.Create))
{
    //特別注意保存文件時的內存占用問題
    MatlabWriter.Write(fs, m, "export");
};

參考:

https://blog.csdn.net/qq_28194303/article/details/109636474?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-0&spm=1001.2101.3001.4242
https://blog.csdn.net/kenjianqi1647/article/details/89487220
https://blog.csdn.net/weixin_42974146/article/details/106674652

更新:
如果一個mat文件有多個矩陣,可以添加命名方式讀取指定矩陣

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM