电子产业一站式赋能平台

PCB联盟网

搜索
查看: 643|回复: 1
收起左侧

求助大佬解释一下

[复制链接]

568

主题

922

帖子

4783

积分

四级会员

Rank: 4

积分
4783
发表于 2023-4-21 14:19:57 | 显示全部楼层 |阅读模式
fid=fopen('asciidata.txt','r');
i=1;
while ~feof(fid)
    name(i,:)=fscanf(fid,'%5c',1);
    year(i)=fscanf(fid,'%d',1);
    no1(i)=fscanf(fid,'%d',1);
    no2(i)=fscanf(fid,'%d',1);
    no3(i)=fscanf(fid,'%g',1);
    no4(i)=fscanf(fid,'%g\n',1);
    i=i+1;
end
fclose(fid);
这个是怎么将文本里的数据读取到各个产量的啊,有点看不懂,我大概知道是按一行一行进行读取的,但不知道为什么,还有fscanf(fid,'%5c',1);这里的1是啥意思啊,为啥no4(i)=fscanf(fid,'%g\n',1);只有这里有回车
求助大佬解释一下-1.png
麻烦大佬帮忙解释一下
求助大佬解释一下-2.png

求助大佬解释一下-3.jpg

求助大佬解释一下-4.jpg
回复

使用道具 举报

0

主题

829

帖子

622

积分

二级会员

Rank: 2

积分
622
发表于 2023-4-21 14:20:50 | 显示全部楼层
是用matlab读取一个文本文件(asciidata.txt)的,第一列是名字,第二列是年份,第三列到第五列是数值数据。fscanf函数中最后的那个数字1为读取输入流的数量,%5c表示读取5个字符,1表示只读取一次。no4(i)的格式说明符包含\n,是因为文本文件中每一行的结尾都应该是换行符,所以要使用\n。确保完整读取每一行的数据并将光标移动到下一行开始的位置以便后续读取数据
有什么问题可以私我信
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表