資源簡介
C#讀取matlab生成的.mat矩陣數據文件。目前找到的比較簡單的調用方式,簡單幾行代碼就能實現需求,代碼中實現了對二維三維以及四維矩陣.mat格式文件的讀取以及創建。
代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?csmatio.io;
using?csmatio.types;
//using?MathNet.Numerics.LinearAlgebra;
//using?MathNet.Numerics.Data.Matlab;
//using?MathNet.Numerics.LinearAlgebra.Double;
namespace?ConsoleApp6
{
????class?Program
????{
????????//static?double[]?squares;
????????//static?Single[]?squares;
????????static?void?Main(string[]?args)
????????{
????????????#region?創建二維矩陣
????????????//double[][]?data3x3?=?new?double[3][];
????????????//data3x3[0]?=?new?double[]?{?100.0?101.0?102.0?};?//?first?row
????????????//data3x3[1]?=?new?double[]?{?200.0?201.0?202.0?};?//?second?row
????????????//data3x3[2]?=?new?double[]?{?300.0?301.0?302.0?};?//?third?row
????????????//MLDouble?mlDoubleArray?=?new?MLDouble(“Matrix_3_by_3“?data3x3);?//創建matlab?二維矩陣變量
????????????//List?mlList?=?new?List();
????????????//mlList.Add(mlDoubleArray);
????????????//MatFileWriter?mfw?=?new?MatFileWriter(“data.mat“?mlList?false);
????????????#endregion
????????????#region?創建三維矩陣
????????????////?初始化三維矩陣,設置維度
????????????//int[]?dims?=?new?int[]?{?2?2?2?};
????????????//MLDouble?array3Dim?=?new?MLDouble(“cube“?dims);
????????????//array3Dim.Set(1?0?0);
????????????//array3Dim.Set(2?1?0);
????????????//array3Dim.Set(3?0?1);
????????????//array3Dim.Set(4?1?1);
????????????//array3Dim.Set(5?0?2);
????????????//array3Dim.Set(6?1?2);
????????????//array3Dim.Set(7?0?3);
????????????//array3Dim.Set(8?1?3);
????????????//List?mlList?=?new?List();
????????????//mlList.Add(array3Dim);
????????????//MatFileWriter?mfw?=?new?MatFileWriter(“data2.mat“?mlList?false);
????????????/*
?????????????A:?Once?you?created?the?3D?array?then?use:?array.Set(value?row_ind?col_index).
????????????For?example?your?3D?array?is?m*n*3:
????????????for?1st?dimension?use?array.Set(value?row_ind?col_index);
????????????for?2nd?dimension?use?array.Set(value?row_ind?col_index+n);
????????????for?3rd?dimension?use?array.Set(value?row_ind?col_index+2n)?????????????
?????????????*/
????????????#endregion
????????????#region?創建四維矩陣
????????????//?初始化四維矩陣,設置維度
????????????//int[]?dims?=?new?int[]?{?5?4?3?2?};
????????????//MLDouble?array4Dim?=?new?MLDouble(“cube4“?dims);
????????????//int?value?=?1;
????????????//for?(int?i?=?0;?i?????????????//{
????????????//????for?(int?j?=?0;?j?????????????//????{
????????????//????????for?(int?p?=?0;?p?????????????//????????{
????????????//????????????for?(int?q?=?0;?q?????????????//????????????{
????????????//????????????????array4Dim.Set(value++?q?p?+?j*dims[1]+i*dims[2]*dims[1]);
????????????//????????????}
????????????//????????}
????????????//????}
????????????//}
????????????//List?mlList?=?new?List();
????????????//mlList.Add(array4Dim);
????????????//MatFileWriter?mfw?=?new?MatFileWriter(“
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2020-02-26?17:06??C#讀取mat文件\
?????目錄???????????0??2020-02-26?17:05??C#讀取mat文件\ConsoleApp6\
?????目錄???????????0??2020-02-26?17:05??C#讀取mat文件\ConsoleApp6\.vs\
?????目錄???????????0??2020-02-26?17:05??C#讀取mat文件\ConsoleApp6\.vs\ConsoleApp6\
?????目錄???????????0??2020-02-26?17:05??C#讀取mat文件\ConsoleApp6\.vs\ConsoleApp6\v15\
?????文件??????294400??2020-02-26?17:06??C#讀取mat文件\ConsoleApp6\.vs\ConsoleApp6\v15\.suo
?????目錄???????????0??2020-02-26?17:05??C#讀取mat文件\ConsoleApp6\.vs\ConsoleApp6\v15\Server\
?????目錄???????????0??2020-02-26?17:05??C#讀取mat文件\ConsoleApp6\.vs\ConsoleApp6\v15\Server\sqlite3\
?????文件???????????0??2020-02-20?15:38??C#讀取mat文件\ConsoleApp6\.vs\ConsoleApp6\v15\Server\sqlite3\db.lock
?????文件??????671744??2020-02-26?15:38??C#讀取mat文件\ConsoleApp6\.vs\ConsoleApp6\v15\Server\sqlite3\storage.ide
?????文件???????32768??2020-02-26?17:06??C#讀取mat文件\ConsoleApp6\.vs\ConsoleApp6\v15\Server\sqlite3\storage.ide-shm
?????文件?????4148872??2020-02-26?17:06??C#讀取mat文件\ConsoleApp6\.vs\ConsoleApp6\v15\Server\sqlite3\storage.ide-wal
?????目錄???????????0??2020-02-26?17:05??C#讀取mat文件\ConsoleApp6\ConsoleApp6\
?????文件????????1839??2020-02-26?10:29??C#讀取mat文件\ConsoleApp6\ConsoleApp6.sln
?????文件?????????189??2020-02-20?15:38??C#讀取mat文件\ConsoleApp6\ConsoleApp6\App.config
?????目錄???????????0??2020-02-26?17:05??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\
?????目錄???????????0??2020-02-26?17:05??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\Debug\
?????文件????????5120??2020-02-26?17:03??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\Debug\ConsoleApp6.exe
?????文件???????18072??2020-02-26?11:27??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\Debug\ConsoleApp6.exe.config
?????文件???????17920??2020-02-26?17:03??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\Debug\ConsoleApp6.pdb
?????文件???????45568??2018-04-22?11:52??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\Debug\csmatio.dll
?????文件?????????185??2020-02-26?13:34??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\Debug\cube.mat
?????文件?????????272??2020-02-26?16:57??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\Debug\data.mat
?????文件????????1160??2020-02-26?17:00??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\Debug\data2.mat
?????文件???????20480??2016-04-11?19:46??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\Debug\MathNet.Numerics.Data.Matlab.dll
?????文件???????18314??2016-04-11?19:46??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\Debug\MathNet.Numerics.Data.Matlab.xm
?????文件?????1676824??2019-10-13?13:44??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\Debug\MathNet.Numerics.dll
?????文件?????3695469??2019-10-13?13:44??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\Debug\MathNet.Numerics.xm
?????文件???????21216??2019-06-21?09:32??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\Debug\Microsoft.Win32.Primitives.dll
?????文件?????????189??2020-02-26?13:13??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\Debug\mydata.mat
?????文件???????98616??2019-06-21?09:32??C#讀取mat文件\ConsoleApp6\ConsoleApp6\bin\Debug\netstandard.dll
............此處省略177個文件信息
評論
共有 條評論