How do I save data to a TXT file?
1,418 次查看(过去 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
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)
采纳的回答
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 个评论
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
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
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
2019-1-20
How can we save transient CFD results in a file during running the code?
1 个评论
Venkatanarasimha Hegde
2023-3-17
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.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Cell Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!