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

1 visualización (últimos 30 días)
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

Respuesta aceptada

David Hill
David Hill el 18 de Abr. de 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

Más respuestas (0)

Categorías

Más información sobre Cell Arrays en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by