Problem writing in data into a csv using fprintf

조회 수: 2 (최근 30일)
Kian
Kian 2015년 8월 10일
댓글: Walter Roberson 2015년 8월 11일
I have a csv file I have written using csvwrite which already contains 3 lines of strings:
fid=fopen('test.csv','wt');
fprintf(fid,'abs 3.1 \n');
fprintf(fid,'This is a line \n');
fprintf(fid,'ID Date lat lon val \n');
Now I am trying to fill in data under each column with data in m which is a 10 by 4 marix. Column 1 are ids (5 digits), col.2 are dates (I want is to be in yyyymmddhhmm format but currently is in scientific notation in the table), cols. 3 and 4 are coordinates (e.g. 43.45 & -114.53), and col.5 are some values (e.g. 1.2345).
I have a hard time writing data in the csv. I am currently trying the following piece of code, but data fills in not the way it should be. Data are not stored under each header correctly.
for r=1:size(m,1)
fprintf(fid,'%5.1f',m(r,:));
if r~=size(m,1)
fprintf(fid,'\n');
end
end
Any thoughts is greatly appreciated.
Kian

답변 (1개)

Muthu Annamalai
Muthu Annamalai 2015년 8월 10일
편집: Muthu Annamalai 2015년 8월 10일
Have you tried csvwrite or dlmwrite ?
doc csvwrite
doc dlmwrite
  댓글 수: 3
Walter Roberson
Walter Roberson 2015년 8월 10일
dlmwrite('test.csv', m, '-append', 'delimiter', '\t', 'precision', '%g');
Kian
Kian 2015년 8월 10일
편집: Kian 2015년 8월 10일
Thank you, but didn't work.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Text Files에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by