我有一个有许多数据点的文件,所有的格式都像XX.XXX一样,数字连续地串在一起。
如何将所有数字分成单独的值?
我尝试读取带有'%5.3d‘和'%5.3f’的文件,但它们都不起作用。同样,'%6s‘也不起作用。
示例输入:
75.91425.43937.55492.55874.43839.51519.59935.11762.33178.14914.81569.43037.90083.32590.492
70.45060.24634.07148.20638.34348.88881.90070.37655.06531.76382.54791.43659.88274.56288.827
87.28590.39641.39551.67340.39870.613所需输出:
75.914
25.439
37.554
92.558
etc.我试过了:
fscanf(Fid,'%6.3f',[3 inf]);
fscanf(Fid,'%5.3f',[3 inf]);
fscanf(Fid,'%5.3f',[3 inf]);
fscanf(Fid,['%2d' char('.') '%3d'], [6 inf]);发布于 2012-01-12 07:21:36
假设每个元素都是6个字符,那么可以执行以下操作,因为fscanf不起作用。注意:我将你的样本保存到"numData.txt“中。
编辑:这要好得多。
fid = fopen('numData.txt','r');
numArray = textscan(fid,'%6.3f',inf);给出
numArray =
75.9140
25.4390
37.5540
... etchttps://stackoverflow.com/questions/8827663
复制相似问题