If the file is not found or the character is not a valid char, the function should return a value -1.

1 Ansicht (letzte 30 Tage)
I am creating a function that counts the given character present in the text file. Problem I am facing is if the text file is not found the function should return value -1 and also if the given character is not a valid one it should return -1.
function [charnum]=char_counter(fname,character)
fid=fopen(fname,'rt')
if fid<0 || ischar(character)==0
charnum=-1;
else
str=fileread(fname);
if strncmpi(character,str,inf)==0
charnum=-1;
end
charnum=count(str,character);
end

Akzeptierte Antwort

David Hill
David Hill am 18 Apr. 2020
How are you defining a valid character? You can use try,catch.
function [charnum]=char_counter(fname,character)
try fid=fopen(fname,'rt');
catch
charnum=-1;
return;
end
if fid<0 || ischar(character)==0
charnum=-1;
else
str=fileread(fname);
if strncmpi(character,str,inf)==0
charnum=-1;
end
charnum=count(str,character);
end

Weitere Antworten (0)

Kategorien

Mehr zu Cell Arrays finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by