MATLAB: Load a file containing disorganized data

strcmp

Hello,
I load a file containing disorganized data files and I would get the file number located at the end of the file name. Then have the file number in my final matrix. For that I apply this code
if strcmp(Fichiers_Travail2(1,end),1)==1
num_sujet = 1;
elseif strcmp(Fichiers_Travail2(1,end),2)==1
num_sujet = 2;
elseif strcmp(Fichiers_Travail2(1,end),3)==1
num_sujet = 3;
elseif strcmp(Fichiers_Travail2(1,end),4)==1
num_sujet = 4;
elseif strcmp(Fichiers_Travail2(1,end),5)==1
num_sujet = 5;
elseif strcmp(Fichiers_Travail2(1,end),6)==1
num_sujet = 6;
elseif strcmp(Fichiers_Travail2(1,end),7)==1
num_sujet = 7;
elseif strcmp(Fichiers_Travail2(1,end),8)==1
num_sujet = 8;
elseif strcmp(Fichiers_Travail2(1,end),9)==1
num_sujet = 9;
elseif strcmp(Fichiers_Travail2(1,end),10)==1
num_sujet = 10;
end
But I have this error message and I don't understand why because I used the same for another information and it works:
??? Undefined function or variable 'num_sujet'.

Best Answer

  • Ok, this is what I needed: I just had to put the values into brackets and include the file extension in my calculation
    if strcmp(Fichiers_Travail2(1,end-4),'1')==1
    num_sujet = 1;
    elseif strcmp(Fichiers_Travail2(1,end-4),'2')==1
    num_sujet = 2;
    elseif strcmp(Fichiers_Travail2(1,end-4),'3')==1
    num_sujet = 3;
    elseif strcmp(Fichiers_Travail2(1,end-4),'4')==1
    num_sujet = 4;
    elseif strcmp(Fichiers_Travail2(1,end-4),'5')==1
    num_sujet = 5;
    elseif strcmp(Fichiers_Travail2(1,end-4),'6')==1
    num_sujet = 6;
    elseif strcmp(Fichiers_Travail2(1,end-4),'7')==1
    num_sujet = 7;
    elseif strcmp(Fichiers_Travail2(1,end-4),'8')==1
    num_sujet = 8;
    elseif strcmp(Fichiers_Travail2(1,end-4),'9')==1
    num_sujet = 9;
    elseif strcmp(Fichiers_Travail2(1,end-5:end-4),'10');
    num_sujet = 10;
    else disp (Fichiers_Travail2)
    end