如何从。dat文件中提取数字

17个视图(过去30天)
万盖利斯鼻
万盖利斯鼻 2021年1月11日
回答: 马修·诺 2021年1月12日
大家好,
我对如何打开和提取.dat文件有一个问题
恒载:28.75
有效载荷:10
跨度:2.0 1.0 3.0 4.0 5.0
我想把这些数字tο放入一些新的变量中,恒载为(q),有效载荷为(g),跨距为(Li)。如果有人有想法,请回答。
谢谢大家!
3评论
万盖利斯鼻
万盖利斯鼻 2021年1月12日
谢谢你的回复gyus,它们都在工作。我唯一的问题是如何将.dat文件的数字部分放入变量中。这就是.dat文件的样子。另外,我想问一下是否可以使用dlmread来解决我的问题。

登录以发表评论。

答案(2)

星际漫游者
星际漫游者 2021年1月12日
一种选择:
fidi = fopen (“Nasis Vangelis.dat”,“rt”);
k = 1;
虽然~feof(fidi)
readline=fgetl(fidi);
C{k}=regexp(readline,”(\ w * \ \ w * \:) | (\ w * \:) | (\ d * \ . * \ d *)”,“比赛”);
k=k+1;
终止
fclose(fidi);
与:
C{1}
C{2}
C{3}
生产:
ans=
1.×2细胞数组
{”静载:“} {“28.75”}
ans=
1.×2细胞数组
{'使用满负荷:'} {'10'}
ans=
1.×6单元数组
{“跨度:”} {“2.0”} {'1.0'} {'3.0'} {'4.0'} {'5.0'}
文件(已重命名) “Nasis Vangelis.txt” “.dat” 文件(不允许)已附加。

马修·诺
马修·诺 2021年1月12日
你好
这是我为您测试的3个选项;我相信第二个是您正在寻找的
a=读取单元(“data.dat”,“分隔符”,":");
%%1选项:创建结构:
%对于ci=1:尺寸(a,1)
%Varnames{ci}=matlab.lang.makeValidName(a{ci,1});
%myStruct.(Varnames{ci})=a{ci,2};
%结束
%选项2使用assignin(在函数variableCreator中):
对于ci=1:尺寸(a,1)
%将变量名称中的空格更改为下划线(否则
%variableCreator将抛出一个错误消息
str=strrep(a{ci,1},' ','_');
val=a{ci,2};
如果伊斯卡尔(瓦尔)
val = str2num (val);
终止
variableCreator(str,val)
终止
%选项3创建一个表-一行引擎!
%T=阵列2表(a)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
函数variableCreator(新变量,变量)
指派(“来电”, newVar,变量);
终止

标签

s manbetx 845

社区寻宝

在MATLAB Central中查找宝藏,了解社区如何帮助您!

开始狩猎!