.MAT

File MAT

MATLAB MAT-File (Data)
Fai una domanda
RISPOSTA RAPIDA

Un file MAT è quasi sempre un file di dati MATLAB - un contenitore binario che racchiude variabili nominate (matrici, array, strutture) salvate da una sessione MATLAB. È possibile aprirlo gratuitamente in GNU Octave o leggerlo in Python con SciPy (per i file più vecchi) o h5py (per i file v7.3, che sono in realtà HDF5). Non può essere aperto direttamente in Excel; è necessario prima esportarlo in CSV.

Sviluppatore: MathWorks Categoria: File di dati Standard aperto MIME: application/x-matlab-data
SI APRE SU Windows macOS Linux
Correlati: .PKPASS · .DAT · .JSON · .RIS

In questa pagina

19k+ estensioni indicizzate
Ultima revisione Jun 28, 2026

Non sei sicuro di cosa sia il tuo file?

Trascina qualsiasi file nel nostro identificatore - leggiamo solo i primi byte per dare un nome al formato.

Identifica un file

Che cos'è il formato di file MAT?

.mat è un file di dati binari utilizzato da MATLAB - l'ambiente di calcolo tecnico di MathWorks - per memorizzare le variabili nominate del workspace. Array, matrici, strutture, cell array e stringhe sono tutti impacchettati in un singolo file .mat, consentendo agli analisti di salvare un'intera sessione di lavoro e ricaricarla esattamente come era stata lasciata.

Il formato si è evoluto attraverso diverse generazioni. Il contenitore dominante Level 5, introdotto nel 1996, inizia con un'intestazione descrittiva ASCII di 128 byte - i primi byte riportano MATLAB 5.0 MAT-file - seguita da una sequenza di elementi di dati etichettati (record miMATRIX) che trasportano ciascuno un nome di variabile, una classe di dati e le dimensioni insieme ai byte grezzi dell'array. Il formato v7 ha aggiunto la compressione opzionale DEFLATE (zlib) per singola variabile mantenendo la stessa struttura. Il MAT-file v7.3, introdotto con MATLAB R2006b (2006), passa silenziosamente il contenitore a HDF5 - motivo per cui alcuni file .mat si aprono in strumenti HDF5 generici come HDFView mentre quelli più vecchi no. Il formato v7.3 rimuove inoltre il limite pratico di dimensione di circa 2 GB per variabile del Level 5.

Il salvataggio e il caricamento dei file .mat in MATLAB utilizza i comandi save e load; passare -v7.3 a save per selezionare il backend HDF5. GNU Octave legge e scrive nativamente sia Level 5 che v7.3. In Python, scipy.io.loadmat gestisce il Level 5, mentre h5py si occupa del v7.3. I dati possono anche essere scambiati con file .csv per risultati tabulari più semplici. Il tipo MIME registrato è application/x-matlab-data.

Sicurezza e incolumità

RISCHIO: LOW

Un file di dati .mat è passivo - memorizza numeri e stringhe, non codice eseguibile, quindi aprirne uno per leggerne le variabili è a basso rischio. Due avvertenze: (1) gli handle di funzione e gli oggetti MATLAB possono essere serializzati in un .mat e il loro caricamento può, in casi limitati, invocare codice di classe - trattate i file .mat da fonti non attendibili con la stessa cautela di qualsiasi dato che passerete attraverso degli script; (2) un .mat v7.3 è un file HDF5, quindi utilizzate un lettore HDF5/MAT aggiornato. Non esiste un'auto-esecuzione in stile macro come nei documenti Office.

Dettagli del formato

in sintesi
NOME COMPLETOMATLAB MAT-File (Data)anche noto come MATLAB data file, MAT-file
SVILUPPATOREMathWorksdal MAT-file Level 5 format with MATLAB 5 (1996); v7.3 (HDF5-based) added in MATLAB 7.3 (2006)
CATEGORIAFile di dati
TIPO MIMEapplication/x-matlab-data
TIPOContenitore di dati scientifici binari (array/variabili); v7.3 è basato su HDF5
STANDARDAperto · royalty-free
Questa estensione è usata anche da…
  • File materiale 3ds Max / motori di gioco - Alcuni strumenti 3D e di gioco usano .mat per la definizione di un materiale (shader/texture), non correlato a MATLAB.
  • Sessione Audiotool .mat - Lo studio musicale online Audiotool salva i progetti con l'estensione .mat.
  • Scorciatoia tabella Microsoft Access - Legacy: un piccolo puntatore che lancia una tabella Access - il nome (errato) registrato nel database di questo sito.
MAGIC BYTES · FIRMA DEL FILE
OFFSET
000102030405060708090a0b0c0d0e0f101112
HEX
4D41544C414220352E30204D41542D66696C65
ASCII
MATLAB 5.0 MAT-file
I MAT-file Level 5 / v6 / v7 iniziano con il testo dell'intestazione ASCII «MATLAB 5.0 MAT-file …» in un'intestazione descrittiva di 128 byte (i primi 116 byte sono testo, seguiti dall'offset del sottosistema e da una versione di 2 byte + indicatore endian «MI»/«IM»). Il MAT-file v7.3 è invece un file HDF5 standard, quindi inizia con la firma HDF5 89 48 44 46 0D 0A 1A 0A («\x89HDF\r\n\x1a\n») e ha uno userblock i cui primi byte riportano «MATLAB 7.3 MAT-file». I MAT-file Level 4 precedenti al 1996 non hanno intestazione testuale.

Programmi che aprono file MAT

Windows4 apps
MATLAB A pagamento Fai doppio clic o usa load('file.mat') per importare le variabili nel workspace. Nativo, massima fedeltà.
GNU Octave Open-source Clone gratuito compatibile con MATLAB; usa load file.mat per leggere le variabili (legge Level 5 e la maggior parte dei file v7.3).
Python (SciPy / h5py) Open-source scipy.io.loadmat('file.mat') per v5-v7; per v7.3 usa h5py (essendo HDF5). Ottimo per la conversione in CSV/NumPy.
HDFView (v7.3 only) Gratuito Apri un .mat v7.3 come HDF5 per sfogliare dataset/gruppi. Non aprirà i vecchi file .mat Level 5.
macOS3 apps
MATLAB A pagamento Fai doppio clic o usa load('file.mat') per importare le variabili nel workspace. Nativo, massima fedeltà.
GNU Octave Open-source Clone gratuito compatibile con MATLAB; usa load file.mat per leggere le variabili (legge Level 5 e la maggior parte dei file v7.3).
Python (SciPy / h5py) Open-source scipy.io.loadmat('file.mat') per v5-v7; per v7.3 usa h5py (essendo HDF5). Ottimo per la conversione in CSV/NumPy.
Linux3 apps
MATLAB A pagamento Fai doppio clic o usa load('file.mat') per importare le variabili nel workspace. Nativo, massima fedeltà.
GNU Octave Open-source Clone gratuito compatibile con MATLAB; usa load file.mat per leggere le variabili (legge Level 5 e la maggior parte dei file v7.3).
Python (SciPy / h5py) Open-source scipy.io.loadmat('file.mat') per v5-v7; per v7.3 usa h5py (essendo HDF5). Ottimo per la conversione in CSV/NumPy.

Dettagli tecnici

specifiche approfondite
SviluppatoreMathWorks
Tipo di formatoContenitore di dati scientifici binari (array e variabili nominate); v7.3 usa HDF5 su disco
Versioni del formatoLevel 4 (legacy, pre-1996), Level 5 (MATLAB 5-7), v7.3 (basato su HDF5, da R2006b in poi)
Firma del file Level 5Testo ASCII «MATLAB 5.0 MAT-file» in un'intestazione descrittiva di 128 byte che inizia all'offset 0
Firma del file v7.3Magic bytes HDF5 89 48 44 46 0D 0A 1A 0A all'offset 0; lo userblock HDF5 si apre con «MATLAB 7.3 MAT-file»
Ordine dei byte (Endianness)Auto-descritto: «MI» = big-endian, «IM» = little-endian, memorizzato ai byte 126-127 dell'intestazione Level 5; v7.3 (HDF5) registra i propri metadati sull'ordine dei byte
Tipi di dati supportatidouble, single, int8/16/32/64, uint8/16/32/64, array complessi, char, logical, struct, cell array, function handle
CompressioneOpzionale per variabile DEFLATE (zlib) in Level 5 v7; filtro gzip/deflate HDF5 disponibile in v7.3
Limite dimensione per variabileLevel 5: ~2 GB per variabile; v7.3 (HDF5): nessun limite superiore pratico - supporta array superiori a 2 GB
Tipo MIMEapplication/x-matlab-data (nella pratica si vedono anche application/matlab-mat e application/octet-stream)
Struttura interna Level 5Intestazione testuale descrittiva di 128 byte seguita da una sequenza di elementi dati miMATRIX etichettati, ognuno dei quali memorizza nome della variabile, classe, dimensioni e dati grezzi dell'array
Compatibilità strumenti HDF5I file v7.3 sono HDF5 validi e si aprono in HDFView, nella libreria C HDF5, h5py e altri strumenti compatibili con HDF5 senza MATLAB
Accesso Pythonscipy.io.loadmat per file Level 5/v7; h5py o il pacchetto mat73 per file v7.3
Flag comando save MATLAB-v6 o -v7 seleziona Level 5; -v7.3 seleziona il formato basato su HDF5 (es. save('data.mat','varname','-v7.3'))
Controllo integritàLevel 5 non ha checksum per l'intero file; v7.3 (HDF5) supporta filtri checksum HDF5 opzionali per singolo dataset
RilasciatoMAT-file Level 5 format with MATLAB 5 (1996); v7.3 (HDF5-based) added in MATLAB 7.3 (2006)
Ultima versioneMAT-file v7.3 (HDF5-based, supports variables > 2 GB); Level 5 still used by v6/v7
Standard apertoSì · royalty-free
Specificawww.mathworks.com

Conversioni MAT

Domande e risposte della community

chiesto dagli utenti
Fai una domanda veloce
Ottieni aiuto da persone che lavorano con i file MAT. Sii specifico - includi il tuo sistema e la versione del software.
Nessun account necessario · risposte solitamente entro un giorno

Ancora nessuna domanda - sii il primo a chiedere informazioni sui file MAT.

Domande frequenti

Come posso aprire un file .mat senza MATLAB?
Usa il software gratuito GNU Octave (comando load file.mat), oppure leggilo in Python con SciPy (scipy.io.loadmat) per le versioni più vecchie e h5py per i file v7.3. Questi strumenti permettono di visualizzare, tracciare o esportare i dati senza una licenza MATLAB.
Come posso convertire un file .mat in CSV?
Caricalo in MATLAB o Octave e usa writematrix/writetable, oppure in Python usa scipy.io.loadmat (o h5py per v7.3) insieme a pandas to_csv. Ogni variabile diventerà un proprio file CSV poiché un .mat può contenerne diverse.
Perché scipy.io.loadmat non apre il mio file .mat?
Probabilmente si tratta di un file v7.3, che è in realtà un formato HDF5 e non è supportato da loadmat. Leggilo invece con h5py (o risalvalo come -v7 in MATLAB/Octave).
Un file .mat è uguale a uno script MATLAB (.m)?
No. Un file .mat memorizza dati (variabili); un file .m è codice sorgente MATLAB. Spesso vengono usati insieme ma sono formati differenti.
Posso leggere un file .mat in Excel?
Non direttamente - .mat è un formato binario, non un foglio di calcolo. Convertilo prima in CSV/XLSX usando MATLAB, Octave o Python, quindi apri quel file in Excel.
Qual è la differenza tra le versioni dei MAT-file (v6, v7, v7.3)?
v6/v7 utilizzano il formato binario Level 5 (v7 aggiunge la compressione); v7.3 passa a HDF5 e supporta variabili più grandi di 2 GB. Si sceglie la versione con il flag di salvataggio -v6/-v7/-v7.3 di MATLAB.

Riferimenti

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

Continua a esplorare

nel database

Migliori estensioni della settimana

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.PARTPartial Download File
4.DATProgram Data File (generic)
5.BINCD/DVD Disc Image (BIN/CUE)
6.M4AMPEG-4 Audio File
7.ICSiCalendar data file
8.JSONJavaScript Object Notation file
9.RPMSGRestricted Permission Message
10.EXEWindows Executable (Portable Executable)

Estensioni correlate

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

Strumenti file gratuiti

Un identificatore di file e convertitore di immagini nel browser - tutto viene eseguito sul tuo dispositivo.

Apri la cassetta degli attrezzi

Sfoglia le estensioni dei file A-Z