我想總結我用fprintf
創建的文件。我有包含像這樣5個文本文件(1列8行):文件總和內容matlab
0.1811
0.0889
-0.1073
-0.0777
-0.0596
0.0971
0.1021
0.3730
我想這些文件加載到工作區,總結這些列。我可以總結兩個文件的列,但最後3個文件總和只適用於最後一行(第8行)。我知道這與加載和打開文件有關。最後兩個文件被加載:
SumFid=fopen(MyFile,'a'); %this is how my 2 files work opened
FID=fopen(FirstFile);
MatrixSub = load(FirstFile);
m = textscan(FID,'%f %f %f %f %f %f %f');
horzcat(m{:})
而其他3個文件我使用:
Wfid=fopen(VFile,'a');
Mat = load(VFile);
VData = fscanf(Wfid,'%f',[8,1]);
當我嘗試使用相同的texscan
和horzcat
與前兩次它給錯誤的內存不足,但後者的代碼,只當我試圖總結這些文件內容的最後一行:
for i = i:8
Sum = A+B % this from first 2 files works
Sum3Files = file1+file2+files3;
end
我知道它看起來可能很平凡,但我是MATLAB新手,很感激你的幫助。
我沒有手頭有Matlab的權利,但該行'Wfid = FOPEN(VFile, 'A');'會打開一個文件追加,嘗試'r'閱讀。在最後的代碼循環沒有依賴於我(你可能也想用另一個字母,因爲我是sqrt(-1)) –
嗨,謝謝你的回答。我嘗試'r'而不是'a',但仍然一樣。我也undertsand循環中的東西不涉及我,但我不知道如何編寫它,因此它總結行所有文件。它爲以前的位代碼,我用'horzcat',所以我在這裏嘗試相同的工作。我不知道如何將我與文件內容聯繫起來 - 我想這不適合。 – mil