2010-11-25 19 views
8

Ich habe nach einer Weile gesucht, um zu sehen, ob jemand Matlab Mat-Dateien in CSharp gelesen hat, und es scheint, dass es nichts gibt.Importieren/Lesen/Laden von Variablen aus Matlab Matfile in C#

Hat jemand irgendwelche Lösungen gesehen?

Ich kann nicht einfach meine Mat-Dateien in Text exportieren und sie dann in meinen C# -Code einlesen, weil es ziemlich komplexe Strukturen gibt.

Ich möchte nicht mit Matlab interagieren und ich möchte auch nicht Python (SciPy with loadmat) verwenden.

Antwort

6

Eine Möglichkeit zu versuchen ist die Einreichung CSMatIO von David Zier über die MathWorks File Exchange. Es ist eine API für .NET 2.0, mit der Sie Level-5-.mat-Dateien lesen können.

Wenn Sie neuere .mat Dateiformate lesen, können Sie zunächst Ihre .mat Datei in MATLAB laden und speichern es als ein älteres Format mit der SAVEVersion Option der Funktion.

+1

Alternativ können Sie einen HD5 Leser verwenden, um die Daten aus den neuen .mat Dateien zu erhalten, wenn Sie setzen in benötigen. einige Arbeiten – Jonas

+0

Ich habe gerade die Bibliotheken von David Zier ausprobiert, sie funktionieren für mich, obwohl sie nicht einfach zu bedienen sind und viel Dreh- und Angelpunkt brauchen, um meine komplexen Strukturen zu beseitigen, aber sie sind so weit das Beste – Ali

1

Wollte eine weitere Alternative zu lesen und schreiben hinzuzufügen. Die Accord.Math Bibliothek (verfügbar über Nuget oder hier: http://accord-framework.net/ einen .mat Dateileser

Verwandte Themen