保存数据到。txt文件

3996次(过去30天)
如何将数据保存为txt文件?我想创建一个简单的两列文本文件,其中第一列是来自一个nx1矩阵的数据,第二列是一个不同的nx1矩阵。我还希望在每一列的第一行都有列标题。
谢谢
1评论
拉古南丹五世
拉古南丹五世 2018年10月4日
问题是您正试图将它们存储在一个数组中,而您必须将它们存储在一个单元格数组中,因为每个文件的大小不同。请尝试以下代码
文件名={'new1.txt'“new2.txt”“new3.txt”};
%打开文件标识符
fid=fopen(“MyFile.txt”' w ');
k = 1:长度(文件名)
%读取文件名作为字符串,包括分隔符和下一行
List=textread(文件名{1,k},“%s”“分隔符”“\n”);
%如果要在单元格数组中排列,请按k的顺序排列
FinalList {k, 1} =列表;
%或打印到文件中。
流(fid, [cell2mat(列表)“\n”]);
结束
%关闭文件识别器
fclose(fid)

登录评论。

公认的答案

何塞•路易斯•
何塞•路易斯• 2012年9月5日
编辑:MathWorks支金宝app持团队 2020年11月4日
要使用具有变量名的数据列写入文本文件,请使用“writetable”函数。首先,创建要写入的数据,将其放入具有变量名的表中,然后将数据写入文本文件。
%创建两列数据
一个=兰德(10,1);
B =兰德(10,1);
%使用数据和变量名创建一个表
T = table(A, B,“VariableNames”, {“一个”“B”} )
%将数据写入文本文件
writetable (T)“MyFile.txt”
有关更多信息,请参阅:
从R2019a ,您可以使用“writematrix”将一个矩阵写入文件。
例如:
M=魔法(5);
writematrix (M,“M.txt”);
有关“writematrix”的更多信息,请参阅以下文件:
13个评论
席琳·阿齐齐
席琳·阿齐齐 2017年8月14日
更好地使用:fid=fopen('MyFile.txt','wt');
而不是fid = fopen (' MyFile.txt ', ' w ');
否则,当用记事本打开文件时,没有返回到行…所有的东西都写在一行里。

登录评论。

更多答案(3)

高尼姆Al-dulaimi
高尼姆Al-dulaimi 2017年12月8日
如果我想打开一个文本文件,我有一个循环,每次给我不同的结果{x1,x1…xn}。那么我如何将从循环中获得的所有数据以不同的名称保存,如y1,y2…等?并且在每个名称下,我可以找到我得到的结果。我将感谢您的帮助。谢谢
1评论
彼得
彼得 2017年12月8日
从你的问题中不清楚你试图循环什么。听起来像是你试图从单个文本文件中读取;这是真的吗?在任何情况下,你都应该能够将读取的值分配给一个新变量。如果你知道每个数据集的长度,你可以为这些变量预先分配矩阵,但这不一定是真的肮脏的。

登录评论。


艾哈迈德·赛义德曼苏尔
如何在运行代码时将瞬态CFD结果保存到文件中?

佩奇Kierce
佩奇Kierce 2020年5月31日
randA

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始打猎吧!