How do I save data to a TXT file?

1,434 次查看(过去 30 天)
How do I save data to a TXT file? I want to create a simple two column text file, where the first column is the data from a n x 1 matrix and the second column is a different n x 1 matrix. I also want column headings in the first row of each column.
  2 个评论
Raghunandan V
Raghunandan V 2018-10-4
编辑:per isakson 2019-1-20
the problem is you are trying to store them in an array whereas you have to store them in a cell array since each file is of different size Try this code
fileName={'new1.txt', 'new2.txt', 'new3.txt'};
%open file identifier
fid=fopen('MyFile.txt','w');
for k=1:length(fileName)
%read the file name as string including delimiters and next lines
List=textread(fileName{1,k},'%s','delimiter','\n');
%arrange them in order of k if you want in a cell array
FinalList{k,1}=List;
%or print them into a file.
fprintf(fid, [cell2mat(List) '\n']);
end
%close file indentifier
fclose(fid)
Yeswanth Kaushik
Yeswanth Kaushik 2023-6-8
try writetable or writecell commands.

请先登录,再进行评论。

采纳的回答

José-Luis
José-Luis 2024-9-4
编辑:MathWorks Support Team 2024-6-5
To write a text file with columns of data that have variable names, use the “writetable” function. First, create the data to write, put it in a table with variable names, and then write the data to text file.
% Create two columns of data A = rand(10,1); B = rand(10,1); % Create a table with the data and variable names T = table(A, B,'VariableNames',{'A', 'B'}); % Write data to text file writetable(T,'MyFile.txt')
For more information see:
Write table to file
https://www.mathworks.com/help/matlab/ref/writetable.html
Starting in MATLAB R2019a
, you can also use the "writematrix" function to write a matrix to a file. For example:
M = magic(5); writematrix(M,"M.txt");
For a complete list of export functions, see:
Supported File Formats for Import and Export
https://www.mathworks.com/help/matlab/import_export/supported-file-formats-for-import-and-export.html
  13 个评论
lafnath p
lafnath p 2016-11-14
how to get the size of data in file
celine azizieh
celine azizieh 2017-8-14
Better to use: fid=fopen('MyFile.txt','wt');
instead of fid=fopen('MyFile.txt','w');
otherwise when opening the file with notepad, there is not return to the line... everything is written on one line.

请先登录,再进行评论。

更多回答(3 个)

WAEL Al-dulaimi
WAEL Al-dulaimi 2017-12-8
In case I want to open a text file and I have a loop that each time give me different results {x1, x1...xn}. So how can I save all the data that I got from the loop in different names such as y1, y2 .... etc? And under each one of them, I can find the result that I got. I'll appreciate your help. thank you
  1 个评论
Peter
Peter 2017-12-8
It is unclear form your question what you are trying to loop across. It sounds like your trying to read from a single text file; is this true? In any case you should be able to just assign the value that you read to a new variable. If you know how long each data set is you can preallocate matrices for those variables, but that's not necessarily necessary.

请先登录,再进行评论。


Ahmed Saeed Mansour
How can we save transient CFD results in a file during running the code?
  1 个评论
Venkatanarasimha Hegde
Its better if you store the time data at different instants along another matrix dimension (possible in C not sure about matlab) or you can concatinate the new data to existing file, so while visualising you can access after the end index of each time instant.

请先登录,再进行评论。


Paige Kierce
Paige Kierce 2020-5-31
randA

类别

Help CenterFile Exchange 中查找有关 Cell Arrays 的更多信息

产品


版本

R2024a

Community Treasure Hunt

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

Start Hunting!

Translated by