19 views (last 30 days)
Image Analyst on 3 Jan 2012
Are you using some code from a prior version where it could take 4 output arguments? Take note of this note:
Note The fourth output argument of fileparts (file version) is no longer supported and has been removed. Calling the function with more than three output arguments generates a warning and will error in a future version.
More Answers (1)
Iain Robinson on 18 Jul 2012
Jaejin, the error is caused because the syntax for the fileparts function has changed between versions of MATLAB.
In MATLAB 2009b (and earlier versions?), the old syntax was:
[pathstr, name, ext, versn] = fileparts(filename)
From MATLAB 2011a onwards the new syntax is:
[pathstr, name, ext] = fileparts(filename)
Using the old syntax in MATLAB 2011a or MATLAB 2011b will generate a warning.
Using the old syntax in MATLAB 2012a will generate an error.
I haven't tested this, but I think if you use the new syntax in any version from MATLAB 2009b onwards it will still work. This is because MATLAB will ignore function outputs that aren't assigned to a variable. By the way, be careful if you are using ~ notation (the tilde) to ignore output arguments. This feature was introduced in MATLAB 2009b, so will break compatibility with earlier versions.