[問題] 讀取txt檔的程式設計問題已回收

看板MATLAB作者 (兌現承諾)時間16年前 (2010/04/08 11:35), 編輯推噓0(006)
留言6則, 2人參與, 最新討論串1/1
我所做的計算在每個time step都需要做如下列所述的事 我想要寫一個讀取一堆txt檔的函式,其中txt檔名是連續變化的, 譬如:position1.txt position2.txt…… 而每個txt檔的內容格式為以空格與換行間隔資料 11 23 45 3 7 6 18 44 66 如果以一列(3個數字)為一筆資料,每個txt檔的列數通常不一樣. 我的問題是該怎麼設計一個判斷式告訴程式已經讀到txt檔末端了, 詳情請看以下程式碼 function [CellArray] = DataInput(size) for k = 1:size %size為txt檔案總數 file = fopen(['position' int2str(k) '.txt'], 'r'); M = 1; while ( 判斷式該怎麼設計? ) for N = 1:3 CellArray{1,k}(M,N) = fscanf(file,'%f',1); end M = M + 1; 這一行有關判斷式的部分該怎麼設計? end fclose(file); end 謝謝你的回覆 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.200.150.188 ※ 編輯: luckychild 來自: 210.200.150.188 (04/08 11:38) ※ 編輯: luckychild 來自: 210.200.150.188 (04/08 11:41)

04/08 11:54, , 1F
每個檔案的列數都是3的倍數?
04/08 11:54, 1F

04/08 14:12, , 2F
有更簡潔的做法
04/08 14:12, 2F

04/08 14:12, , 3F
function [CellArray] = DataInput(size)
04/08 14:12, 3F

04/08 14:12, , 4F
for k=1:size
04/08 14:12, 4F

04/08 14:12, , 5F
CellArray{1,k}=load(['position' int2str(k) '.txt'];
04/08 14:12, 5F

04/08 14:13, , 6F
end
04/08 14:13, 6F
文章代碼(AID): #1BlKxdsh (MATLAB)
文章代碼(AID): #1BlKxdsh (MATLAB)