Write cell array, table into text file?

13 visualizaciones (últimos 30 días)
Peter Fang
Peter Fang el 23 de Abr. de 2022
Editada: Stephen23 el 23 de Abr. de 2022
hello again guys.
I have 1 question: I used cell2table to be able to use writetable, but the output data stick together, it doesn't match the model given by the teacher.
My result name: exe.txt
The result the teacher needs: result_example.txt
I'm asking myself, if I concatenate the words in cell array H will it solve the problem?
I will leave the resulting file and image below, including the m file of the function.
Hope you can help. Thank you.
P/s: I use R2018a
  1 comentario
Stephen23
Stephen23 el 23 de Abr. de 2022
Editada: Stephen23 el 23 de Abr. de 2022
@Peter Fang: please upload log.txt by clicking the paperclip button.
Does your teacher really need a fixed width file separated by varying numbers of tabs? It would be much much simpler if they accepted a fixed-width file separated by space characters.

Iniciar sesión para comentar.

Respuesta aceptada

Stephen23
Stephen23 el 23 de Abr. de 2022
Editada: Stephen23 el 23 de Abr. de 2022
Fake data just for testing the code:
dtm = datetime(2021,3,[1;2;31],'Format','dd-MM-yyyy')
dtm = 3×1 datetime array
01-03-2021 02-03-2021 31-03-2021
num = [15;10;2]
num = 3×1
15 10 2
Connvert data (from table or whatever you have) into one cell array:
tmp = num2cell(reshape(dtm,1,[]));
tmp(2,:) = num2cell(num);
Header:
hdr = {'Ngay','So luong'};
hdr = regexprep(hdr,' ','\a');
Now print fixed-width text using tab separator:
str = [...
sprintf('%-16s%-s\n',hdr{:}),...
sprintf('%-16s%-u\n',tmp{:})];
str = regexprep(str,' {1,4}','\t');
str = regexprep(str,'\a',' ');
[fid,msg]= fopen('result.txt','wt');
fprintf(fid,'%s',str);
fclose(fid);
Check file content:
type result.txt
Ngay So luong 01-03-2021 15 02-03-2021 10 31-03-2021 2
It is a shame that FPRINTF does not have an option for padding with tabs.

Más respuestas (1)

Image Analyst
Image Analyst el 23 de Abr. de 2022
Try writecell().
  1 comentario
Peter Fang
Peter Fang el 23 de Abr. de 2022
Impossible. I tried but it doesn't exist in 2018 version

Iniciar sesión para comentar.

Productos


Versión

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by