我想用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 –