Index exceeds matrix dimensions​..........​.error

when i run this code i get the index exceeds matrix dimension error
clear
a='D:\Seismic Data';
b=dir(fullfile(a));
L1=length(b);
for i=3:L1
c=dir(fullfile(a,b(i).name));
d=fullfile(a,b(i).name,c(7).name);
e=headerInfo(d);
f=e{6,6};
g=strsplit(f,':');
s1{i-2,:}=e{8,3};
s2{i-2,:}=e{5,6};
s3{i-2,:}=e{5,11};
s4{i-2,:}=g{1};
s5{i-2,:}=g{2};
end
y=[s1 s2 s3 s4 s5];
xlswrite('D:\Test MATLAB\Myprogram2.xlsx',y,'sheet1','R2')

3 Commenti

Which line is the error on?
in 7th line
for i=3 it is working well but as i=4 then is could not load all the directory in c.

Accedi per commentare.

Risposte (1)

Sunny Billava
Sunny Billava il 22 Set 2015
Are you sure you want to hard-code index of c to c(7) on line 5?

2 Commenti

yes c(7) is hard-code index.
How can you be positive there will always be at least 7 files there?
Also you are not taking into account that the order of files returned is not fixed, and depends on the file system (not the operating system). If you need a particular name then you should use it.

Accedi per commentare.

Richiesto:

il 22 Set 2015

Commentato:

il 22 Set 2015

Community Treasure Hunt

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

Start Hunting!

Translated by