writing cell array to file
3 views (last 30 days)
Show older comments
Amjad Luna
on 28 Feb 2020
Answered: Sravya Pulavarthi
on 12 Feb 2021
Hi,
I have a large text file with entries/lines that look like as follows.
-60,-69,""
-63,-77,""
-64,-79,""
-69,-85,""
-75,-91,""
-75,-91,""
-79,-77,""
I need to extract the first N (say three) lines and write them to another text file. I am doing the following.
fp_in=fopen(input_file_name, 'r');
inDump=textscan(fp_in, '%s%s%s', 'Delimiter', ',');
outDump={inDump{1}(1:3) inDump{2}(1:3) inDump{3}(1:3)};
T=cell2table(outDump);
writetable(T,output_file_name);
The output file comes out with the columns of the input file transposed. This is what I see in the output file.
-60,-63,-64,-69,-77,-79,"","",""
Thanks for any tips.
2 Comments
Accepted Answer
Sravya Pulavarthi
on 12 Feb 2021
Hi Amjad, you can use readtable and writetable to do this:
>> r = readtable(input_file_name);
>> N = 3; % Since you want to extract the first 3 lines of your file
>> writetable(r(1:N,:), output_file_name, "QuoteStrings", true, "WriteVariableNames", false);
0 Comments
More Answers (0)
See Also
Categories
Find more on Cell Arrays 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!