While trying to write in a.txt or .csv file, I am receiving the message "Index exceeds the number of array elements (0)"
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
I am trying to wite my output into a .csv file and a .txt file after scaning the attached .txt file (imported_PEVT.txt). However, I am getting the following error " Index exceeds the number of array elements (0)". Could anybody please help me in this regard? Thanks.
function main
fid = fopen('imported_PEVT.txt', 'r');
y = [];
m = [];
d = [];
h = [];
mm = [];
v = [];
while feof(fid) == 0
tline = fgetl(fid);
out = sscanf(tline, '%d %d %d %d %d %f');
y1 = out(1);
m1 = out(2);
d1 = out(3);
h1 = out(4);
mm1 = out(5);
v1 = out(6);
y = [y; y1];
m = [m; m1];
d = [d; d1];
h = [h; h1];
mm = [mm; mm1];
v = [v; v1];
end
write_output_file_pevt_notime('pevt_no_t.csv', v);
write_output_file_pevt_wtime('pevt_w_t.txt', y, m, d, h, mm, v);
end
function write_output_file_pevt_notime(fname, v)
fid = fopen(fname, 'w');
fprintf('%f\n',[v]');
fprintf(fid,'%f\n',[v]');
fclose(fid);
end
function write_output_file_pevt_wtime(fname, y, m, d, h, mm, v)
fid = fopen(fname, 'w');
fprintf('%d %d %d %d %d %f\n',[y m d h mm v]');
fprintf(fid,'%d %d %d %d %d %f\n',[y m d h mm v]');
fclose(fid);
end
2 Commenti
bharath pro
il 30 Giu 2020
The above code is working fine for me. May I know which version of matlab you are using?
Risposta accettata
SC
il 30 Giu 2020
The last line in your text file (line:78889) is an empty line
clear that out & your code works!
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Matrix Indexing in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!