how to transform data from excel to tesx
2 views (last 30 days)
Show older comments
Muhsin
on 19 Dec 2017
Commented: Walter Roberson
on 19 Dec 2017
Hello all; Can anyone please help me transform the data from excel to txt in a format like the attached file? Thank you very much
0 Comments
Accepted Answer
Walter Roberson
on 19 Dec 2017
fid_in = fopen('input.csv', 'rt');
fid_out = fopen('output_file.txt', 'wt');
colname_line = fgetl(fid_in);
colnames = regexp(colname_line, '\s*\t\s*', 'split');
colnames_formatted = sprintf('$#%8s%10s%10s%10s%10s%10s%10s%10s', colnames{:});
empty_formatted = blanks(80);
while true
thisline = fgetl(fid_in);
if ~ischar(thisline); break; end %end of file detected
vals_in = sscanf(thisline, '%f');
fprintf(fid_out, '*PART\n$# title\n%s\n%s\n', empty_formatted, colnames_formatted);
fprintf(fid_out, '%10g%10g%10g%10g%10g%10g%10g%10g\n', vals_in);
end
fclose(fid_in);
fclose(fid_out);
"Bug-for-bug compatible" as they say in the industry...
2 Comments
Walter Roberson
on 19 Dec 2017
Change
colnames = regexp(colname_line, '\s*\t\s*', 'split');
to
colnames = regexp(colname_line, ',', 'split');
Change
vals_in = sscanf(thisline, '%f');
to
vals_in = sscanf(thisline, '%f,');
More Answers (0)
See Also
Categories
Find more on Data Import from MATLAB in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!