matlab逐行书写数据到txt文件 【实测成功】

文章目录


仅作为尝试记录,大佬请跳过。

背景

博主查了help帮助文档中的有关打开和操作txt文件的函数、百度文库、csdn优秀博主的博文,最终用matlab逐行书写数据到txt文件【实测成功】

有三行数据,博主想将其一一逐行自动写入txt文档:

awrite=[0.939388293275100,0.260550230502723,0.123944635185685];
awrite2=[0.919725534642714,0.233355032286075,0.142918252602611];
awrite3=[0.884555289992598,0.320277027039477,0.115229965056708];

代码

1、现在文件夹里新建一个txt文件,博主命名为tempwrite.txt

2、书写的三行数据分别如上awrite、awrite2、awrite3

2、书写txt第一行的代码:

fid=fopen('tempwrite.txt','r+');

for i=1:length(awrite)
    fprintf(fid,'%.4f\t',awrite3(i));
end

fclose(fid);

3、txt文件的第一行书写完后,转用下面的代码书写txt文件的其他行:

fid=fopen('tempwrite.txt','r+');

while ~feof(fid)
    tline=fgetl(fid)
    location=ftell(fid)
    
end
fseek(fid,location,'eof');
fprintf(fid,'\r\n');
for i=1:length(awrite)
    fprintf(fid,'%.4f\t',awrite3(i));
end

fclose(fid);

注意 书写第一行和书写其他行的代码有区别的原因是:书写txt其他行时需要检测现有行的末端位置,并从另起的新行继续书写,否则如果不检测的话(打开后直接写的话),会写在txt的第一行的位置,覆盖掉txt原有的第一行数据;而matlab写txt第一行数据时,fopen打开txt文件后就可以直接写,本身就写在了txt的第一行。

展示

在这里插入图片描述


博主将matlab源代码放入资源库仅作为储存
传送门

(众博友们不用下载,资源库源代码与博文里代码完全相同,博主仅作为储存)

  • 5
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值