我想用Matlab的fscanf函数读取包含在小配置文件中的信息。该文件的内容是;fscanf函数的奇怪行为
YAcex: 1.000000
YOx: 1.000000
KAce: 1.000000
用于解析文件的matlab代码是;
fh = fopen('parameters', 'r');
fscanf(fh, 'YAcex: %f\n')
fscanf(fh, 'YOx: %f\n')
fscanf(fh, 'KAce: %f\n')
fclose(fh);
当调用此脚本时,只有“YAcex”行被正确读取; fscanf为其他两行返回[]
。如果YOx和KAce行被切换(YOx之前的KAce),则fscanf会正确读取所有行。
有人可以解释这种行为吗?
补充信息:输入文件中的换行符是简单的换行符(\ n字符,不含\ r字符)。
根据OP,当YOx和KAce线路切换时,他的代码可以正确读取。对此有何看法? –
我似乎无法在2014b上重现此行为@Sarder Usama – BillBokeey
尝试在文本文件和MATLAB脚本中切换这些行。 https://i.stack.imgur.com/Azdmh.jpg –