.MAT

Fichier MAT

MATLAB MAT-File (Data)
Poser une question
RÉPONSE RAPIDE

Un fichier MAT est presque toujours un fichier de données MATLAB - un conteneur binaire contenant des variables nommées (matrices, tableaux, structures) enregistrées lors d'une session MATLAB. Ouvrez-le gratuitement dans GNU Octave ou lisez-le en Python avec SciPy (fichiers anciens) ou h5py (fichiers v7.3, qui sont en réalité du HDF5). Il ne peut pas être ouvert directement dans Excel ; exportez-le d'abord en CSV.

Développeur : MathWorks Catégorie : Fichiers de données Standard ouvert MIME: application/x-matlab-data
S'OUVRE SUR Windows macOS Linux
Lié : .PKPASS · .DAT · .JSON · .RIS

Sur cette page

19k+ extensions indexées
Dernière révision le Jun 28, 2026

Pas sûr de la nature de votre fichier ?

Déposez n'importe quel fichier dans notre identificateur - nous lisons juste les premiers octets pour nommer le format.

Identifier un fichier

Qu'est-ce que le format de fichier MAT ?

.mat est un fichier de données binaire utilisé par MATLAB - l'environnement de calcul technique de MathWorks - pour stocker les variables nommées de l'espace de travail. Les tableaux, matrices, structures, tableaux de cellules et chaînes de caractères sont tous regroupés dans un seul fichier .mat, permettant aux analystes de sauvegarder une session de travail entière et de la recharger exactement telle qu'elle a été laissée.

Le format a évolué à travers plusieurs générations. Le conteneur dominant Level 5, introduit en 1996, commence par un en-tête descriptif ASCII de 128 octets - les premiers octets indiquent MATLAB 5.0 MAT-file - suivi d'une séquence d'éléments de données balisés (enregistrements miMATRIX) qui portent chacun un nom de variable, une classe de données et des dimensions aux côtés des octets bruts du tableau. Le format v7 a ajouté la compression DEFLATE (zlib) optionnelle par variable tout en conservant cette même structure. Le MAT-file v7.3, livré avec MATLAB R2006b (2006), bascule discrètement le conteneur vers le HDF5 - c'est pourquoi certains fichiers .mat s'ouvrent dans des outils HDF5 génériques tels que HDFView alors que les plus anciens ne le permettent pas. Le format v7.3 supprime également la limite pratique de taille par variable d'environ 2 Go du Level 5.

La sauvegarde et le chargement des fichiers .mat dans MATLAB utilisent les commandes save et load ; passez -v7.3 à save pour sélectionner le moteur HDF5. GNU Octave lit et écrit nativement les formats Level 5 et v7.3. En Python, scipy.io.loadmat gère le Level 5, tandis que h5py s'occupe du v7.3. Les données peuvent également être échangées avec des fichiers .csv pour des résultats tabulaires plus simples. Le type MIME enregistré est application/x-matlab-data.

Sécurité et sûreté

RISQUE : LOW

Un fichier de données .mat est passif - il stocke des nombres et des chaînes, pas de code exécutable, donc en ouvrir un pour lire ses variables présente un risque faible. Deux bémols : (1) les handles de fonction et objets MATLAB peuvent être sérialisés dans un .mat, et leur chargement peut, dans des cas précis, invoquer du code de classe - traitez les fichiers .mat de sources non fiables avec la même prudence que toute donnée que vous passez par des scripts ; (2) un .mat v7.3 est un fichier HDF5, utilisez donc un lecteur HDF5/MAT à jour. Il n'y a pas d'auto-exécution de type macro comme dans les documents Office.

Détails du format

en bref
NOM COMPLETMATLAB MAT-File (Data)alias MATLAB data file, MAT-file
DÉVELOPPEURMathWorksdepuis MAT-file Level 5 format with MATLAB 5 (1996); v7.3 (HDF5-based) added in MATLAB 7.3 (2006)
TYPE MIMEapplication/x-matlab-data
TYPEConteneur de données scientifiques binaire (tableaux/variables) ; v7.3 est basé sur HDF5
STANDARDOuvert · libre de droits
Cette extension est également utilisée par…
  • Fichier de matériau 3ds Max / moteur de jeu - Certains outils 3D et de jeux utilisent .mat pour une définition de matériau (shaders/textures), sans rapport avec MATLAB.
  • Session Audiotool .mat - Le studio de musique en ligne Audiotool enregistre les projets avec une extension .mat.
  • Raccourci de table Microsoft Access - Hérité : un petit pointeur lançant une table Access - le nom (incorrect) enregistré dans la base de données de ce site.
OCTETS MAGIQUES · SIGNATURE DE FICHIER
OFFSET
000102030405060708090a0b0c0d0e0f101112
HEX
4D41544C414220352E30204D41542D66696C65
ASCII
MATLAB 5.0 MAT-file
Les fichiers MAT Level 5 / v6 / v7 commencent par le texte d'en-tête ASCII « MATLAB 5.0 MAT-file … » dans un en-tête descriptif de 128 octets (les 116 premiers octets sont du texte, suivis de l'offset du sous-système et d'une version de 2 octets + l'indicateur d'endianness « MI »/« IM »). Le MAT-file v7.3 est quant à lui un fichier HDF5 standard, il commence donc par la signature HDF5 89 48 44 46 0D 0A 1A 0A (« \x89HDF\r\n\x1a\n ») et possède un bloc utilisateur dont les premiers octets indiquent « MATLAB 7.3 MAT-file ». Les fichiers MAT Level 4 antérieurs à 1996 n'ont pas d'en-tête textuel.

Programmes qui ouvrent les fichiers MAT

Windows4 apps
MATLAB Payant Double-cliquez ou utilisez load('file.mat') pour importer les variables dans l'espace de travail. Natif, fidélité totale.
GNU Octave Open-source Clone gratuit compatible MATLAB ; utilisez load file.mat pour lire les variables (lit le Level 5 et la plupart des fichiers v7.3).
Python (SciPy / h5py) Open-source scipy.io.loadmat('file.mat') pour v5-v7 ; pour v7.3 utilisez h5py (c'est du HDF5). Idéal pour la conversion vers CSV/NumPy.
HDFView (v7.3 only) Gratuit Ouvrez un .mat v7.3 en tant que HDF5 pour parcourir les jeux de données/groupes. N'ouvrira pas les anciens fichiers .mat Level 5.
macOS3 apps
MATLAB Payant Double-cliquez ou utilisez load('file.mat') pour importer les variables dans l'espace de travail. Natif, fidélité totale.
GNU Octave Open-source Clone gratuit compatible MATLAB ; utilisez load file.mat pour lire les variables (lit le Level 5 et la plupart des fichiers v7.3).
Python (SciPy / h5py) Open-source scipy.io.loadmat('file.mat') pour v5-v7 ; pour v7.3 utilisez h5py (c'est du HDF5). Idéal pour la conversion vers CSV/NumPy.
Linux3 apps
MATLAB Payant Double-cliquez ou utilisez load('file.mat') pour importer les variables dans l'espace de travail. Natif, fidélité totale.
GNU Octave Open-source Clone gratuit compatible MATLAB ; utilisez load file.mat pour lire les variables (lit le Level 5 et la plupart des fichiers v7.3).
Python (SciPy / h5py) Open-source scipy.io.loadmat('file.mat') pour v5-v7 ; pour v7.3 utilisez h5py (c'est du HDF5). Idéal pour la conversion vers CSV/NumPy.

Détails techniques

spécifications approfondies
DéveloppeurMathWorks
Type de formatConteneur de données scientifiques binaire (tableaux et variables nommées) ; v7.3 utilise HDF5 sur le disque
Versions du formatLevel 4 (hérité, pré-1996), Level 5 (MATLAB 5-7), v7.3 (basé sur HDF5, à partir de R2006b)
Signature de fichier Level 5Texte ASCII « MATLAB 5.0 MAT-file » dans un en-tête descriptif de 128 octets commençant à l'offset 0
Signature de fichier v7.3Octets magiques HDF5 89 48 44 46 0D 0A 1A 0A à l'offset 0 ; le bloc utilisateur HDF5 s'ouvre par « MATLAB 7.3 MAT-file »
Ordre des octets (Endianness)Auto-décrit : « MI » = big-endian, « IM » = little-endian, stocké aux octets 126-127 de l'en-tête Level 5 ; v7.3 (HDF5) enregistre ses propres métadonnées d'ordre des octets
Types de données pris en chargedouble, single, int8/16/32/64, uint8/16/32/64, tableaux complexes, char, logical, struct, cell array, function handle
CompressionDEFLATE (zlib) optionnelle par variable dans le Level 5 v7 ; filtre gzip/deflate HDF5 disponible dans la v7.3
Limite de taille par variableLevel 5 : ~2 Go par variable ; v7.3 (HDF5) : aucune limite supérieure pratique - prend en charge les tableaux dépassant 2 Go
Type MIMEapplication/x-matlab-data (application/matlab-mat et application/octet-stream sont également rencontrés en pratique)
Structure interne Level 5En-tête textuel descriptif de 128 octets suivi d'une séquence d'éléments de données miMATRIX balisés, chacun stockant le nom de la variable, la classe, les dimensions et les données brutes du tableau
Compatibilité avec les outils HDF5Les fichiers v7.3 sont des fichiers HDF5 valides et s'ouvrent dans HDFView, la bibliothèque C HDF5, h5py et d'autres outils compatibles HDF5 sans MATLAB
Accès Pythonscipy.io.loadmat pour les fichiers Level 5/v7 ; h5py ou le paquet mat73 pour les fichiers v7.3
Options de la commande save MATLAB-v6 ou -v7 sélectionne le Level 5 ; -v7.3 sélectionne le format basé sur HDF5 (ex: save('data.mat','varname','-v7.3'))
Vérification d'intégritéLe Level 5 n'a pas de somme de contrôle pour l'ensemble du fichier ; le v7.3 (HDF5) prend en charge des filtres de somme de contrôle HDF5 optionnels par jeu de données
PubliéMAT-file Level 5 format with MATLAB 5 (1996); v7.3 (HDF5-based) added in MATLAB 7.3 (2006)
Dernière versionMAT-file v7.3 (HDF5-based, supports variables > 2 GB); Level 5 still used by v6/v7
Standard ouvertOui · libre de droits
Spécificationwww.mathworks.com

Conversions MAT

Q&R de la communauté

posées par les utilisateurs
Poser une question rapide
Obtenez de l'aide de personnes qui travaillent avec des fichiers MAT. Soyez précis - incluez votre système et la version du logiciel.
Aucun compte requis · réponses généralement sous un jour

Pas encore de questions - soyez le premier à poser une question sur les fichiers MAT.

Foire aux questions

Comment ouvrir un fichier .mat sans MATLAB ?
Utilisez le logiciel gratuit GNU Octave (load file.mat), ou lisez-le en Python avec SciPy (scipy.io.loadmat) pour les anciennes versions et h5py pour les fichiers v7.3. Ceux-ci vous permettent de visualiser, tracer ou exporter les données sans licence MATLAB.
Comment convertir un fichier .mat en CSV ?
Chargez-le dans MATLAB ou Octave et utilisez writematrix/writetable, ou en Python utilisez scipy.io.loadmat (ou h5py pour v7.3) plus pandas to_csv. Chaque variable devient son propre CSV car un .mat peut en contenir plusieurs.
Pourquoi scipy.io.loadmat n'ouvre-t-il pas mon fichier .mat ?
Il s'agit probablement d'un fichier v7.3, qui est en réalité du HDF5 et n'est pas pris en charge par loadmat. Lisez-le plutôt avec h5py (ou réenregistrez-le en tant que -v7 dans MATLAB/Octave).
Un fichier .mat est-il identique à un script MATLAB (.m) ?
Non. Un fichier .mat stocke des données (variables) ; un fichier .m est du code source MATLAB. Ils sont souvent utilisés ensemble mais sont des formats différents.
Puis-je lire un fichier .mat dans Excel ?
Pas directement - le .mat est binaire, pas un tableur. Convertissez-le d'abord en CSV/XLSX à l'aide de MATLAB, Octave ou Python, puis ouvrez ce dernier dans Excel.
Quelle est la différence entre les versions de fichiers MAT (v6, v7, v7.3) ?
v6/v7 utilisent le format binaire Level 5 (v7 ajoute la compression) ; v7.3 passe au HDF5 et prend en charge les variables de plus de 2 Go. Vous choisissez la version avec l'option de sauvegarde -v6/-v7/-v7.3 de MATLAB.

Références

1Library of Congress - MAT-File Level 5 File Formatwww.loc.gov
2MathWorks - MAT-File Versionswww.mathworks.com

Continuer l'exploration

à travers la base de données

Top des extensions cette semaine

1.AQQAQQ Instant Messenger File
2.MDMarkdown Document
3.CRDOWNLOADChrome Partial Download File
4.RPMSGRestricted Permission Message
5.BINCD/DVD Disc Image (BIN/CUE)
6.PARTPartial Download File
7.NOMEDIAAndroid No-Media Marker File
8.EXEWindows Executable (Portable Executable)
9.DBSQLite Database File
10.SWFSmall Web Format (Shockwave Flash)

Extensions liées

.PKPASSApple Wallet Pass (formerly Passbook)
.DATProgram Data File (generic)
.JSONJavaScript Object Notation file
.RISResearch Information Systems citation file
.OFXOpen Financial Exchange
.CSVComma-Separated Values

Outils de fichiers gratuits

Un identificateur de fichier et un convertisseur d'images dans le navigateur - tout s'exécute sur votre appareil.

Ouvrir la boîte à outils

Parcourir les extensions de fichiers A-Z