這是一個由別人編寫的腳本,我不明白爲什麼它給了我這個錯誤(我並不真正瞭解Matlab,但這似乎是一個相當直接的腳本,所以我有點難過)。 文件與Matlab:錯誤使用fprintf
clear all
filein=['Runs/'];
Namein1=['AIC'];
Nameout=['Nash'];
啓動它,然後做了一堆計算得到納什薩特克利夫係數(對於這個問題並不重要),然後嘗試將結果寫入一個文件:
%Write Nash
%Output file writing
%Write file header
D={'Conbination','Nash with Error','Nash-error','RMSE','RMSE-error',...
'AIC', 'MinNash', 'MaxNash'};
NameOut=[filein,Nameout, '.txt'];
fileID = fopen(NameOut,'w');
for i=1:length(D)-1
fprintf(fileID,'%s\t',D{i});
然後更多的東西如下,但這是我得到的錯誤信息:
Error using fprintf
Invalid file identifier. Use fopen to generate a valid file identifier.
Error in Nash_0EV_onlyT (line 169)
fprintf(fileID,'%s\t',D{i});
我不明白這裏有什麼問題嗎?該腳本指定了該文件,並使用fopen ...?是不是應該用fopen語句創建文件Nash.txt(這個文件目前不存在於我的文件夾運行/)?我錯過了什麼?謝謝!
PS我在MacBook Pro上運行Matlab2013a(通過大學組許可)與OSX 10.8
能否詳細說明一下?也許顯示你用來解決問題的代碼?然後遇到問題的其他用戶也有機會找到此解決方案。 –
好吧,事實證明,我沒有改變代碼中的任何東西。我必須將「當前文件夾」(Matlab 2013a(Mac OSX 10.8)左側的窗格)設置爲我想要創建的文件所在的位置。它被設置爲標準的MATLAB文件夾,但有一種方法或其他方法在寫入該位置時遇到麻煩。 – Geraldine