MATLAB version 2018b provides a different exception identifier for the same situation than version 2017b did. Can you suggest the easiest way to handle this that works for both versions?

조회 수: 1 (최근 30일)
% this same bit of code causes the identifier "MATLAB:imagesci:h5info:unableToFind"
% is there a better way to catch this exception that will work for both versions?
IMUstring = '/Nav_Data/'; % does this group exist in the hdf5 file?
try
h5info(full_h5_name,IMUstring);
catch err % No, so check for this group instead
if strcmp(err.identifier,'MATLAB:imagesci:h5info:libraryError')
IMUstring='/ER2_IMU/';
try
h5info(full_h5_name,IMUstring);
catch err % Not that group. One last option
IMUstring = '/ApplanixIMU/';
try
h5info(full_h5_name,IMUstring);
catch err % out of options. Alert the user to problem
if strcmp(err.identifier,'MATLAB:imagesci:h5info:libraryError')
error('problem identifying IMU in use. Did you give the correct filename?')
end
end
end
end

채택된 답변

Fangjun Jiang
Fangjun Jiang 2018년 9월 24일
You didn't identify other errors. Is it necessary to identify this error, or you just simply need to catch an errors.
Anyway, I had to use version() or verLessThan() a few times to make my script working in different versions of MATLAB.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 HDF5에 대해 자세히 알아보기

태그

제품


릴리스

R2017b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by