File Exchange

image thumbnail

MATCAT - MAT-File Corruption Analysis Tool

version 1.0.0.1 (3.94 KB) by

Analyzes a MAT-File or .FIG file to try to determine why there was an error loading it in MATLAB.

6 Downloads

Updated

View License

MAT-File Corruption Analysis Tool (MATCAT) version 3, June 2005.
 
This tool is intended to be run within MATLAB 5 (R8) or later to determine whether a v5 MAT-File is corrupted. Currently only v5 MAT-Files are supported.
 
Usage example of how to use this function:
given a v5 MAT-File 'myfile.mat' which you want to know whether it is corrupted:
 
    matcat myfile.mat
    good = matcat('myfile.mat')
 
Return value:
 
    0 = failure (bad v5 MAT-File)
    1 = success (good v5 MAT-File)
 
Special note:
 
   'v5' refers to version 5 of the MAT-File format, not the version of MATLAB itself.
 
   The MAT-File format is documented here:
    http://www.mathworks.com/access/helpdesk/help/pdf_doc/matlab/matfile_format.pdf
 
   The version 5 MAT-File format has been in use starting in MATLAB version 5.0 (R8), November 1996, through the present MATLAB version 7 (R14sp2) and later.

Sample output:

>> matcat v5good.mat
MAT-File Corruption Analysis Tool (MATCAT) version 2, February 2005
file 'v5good.mat' opened successfully
numeric data in this MAT-File does not need to be endian-swapped when read on this computer
MAT-File header:
[MATLAB 5.0 MAT-file, Platform: PCWIN, Created on: Tue Feb 8 13:17:27 2005 ]
this MAT-File does not have subsystem data (not all MAT-Files have this)
128 byte v5 MAT-File header ok

variable 1 TAG: datatype_14 (MATRIX), data bytes: 96
byte: 232
variable 2 TAG: datatype_14 (MATRIX), data bytes: 64
byte: 304
variable 3 TAG: datatype_14 (MATRIX), data bytes: 48
byte: 360

MAT-File integrity check completed successfully for (v5good.mat), 3 variable(s) found

ans =

     1

>>

Comments and Ratings (6)

Mike++

Mike++ (view profile)

Well I'm trying to use it to find out why my file is corrupt and not opening, but it validates it as a good file. I'm trying to write an array of miSINGLE values with C++ and its not working. I was hoping this tool would tell me why. It also says the Header is invalid on good files when it does not begin with MATLAB, however the matfile format documentation says the header can contain anything (just make sure you use the first 4 bytes). We use our company name first. I don't so much need a validator to tell me a file is good. It will open.

Mike++

Mike++ (view profile)

Well I'm trying to use it to find out why my file is corrupt and not opening, but it validates it as a good file. I'm trying to write an array of miSINGLE values with C++ and its not working. I was hoping this tool would tell me why.

Razvan Anca

sinan gökçe

mete ergun

Michael Robbins

Good idea

Updates

1.0.0.1

Updated license

MATLAB Release
MATLAB 7.0.1 (R14SP1)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video