[問題] 讀txt檔並擷取特定資料已回收

看板MATLAB作者 (超越雙手的極限)時間15年前 (2010/07/01 13:34), 編輯推噓3(309)
留言12則, 4人參與, 最新討論串1/1
各位版上的高手們好: 是這樣的,我想要讀一個txt檔(檔名為1.txt並且已放在current folder), 該檔案內容大致上如下所示: . .. ... txt檔的前24行均為中文說明或中文欄位名稱 第25行以後即為11x4的數據。 而我真正想要擷取的資料即是這11x4的數據,前面的24行全部略過。 --- 在尋求解答的過程中無意間找到這個網頁 http://0rz.tw/Prgui 內容提到 xs=cell2mat(textscan(f1,'%f',123,'HeaderLines',4)); 而我參考這個程式修改成 f1 = fopen('1.txt','r'); x = cell2mat(textscan(f1,'%f',[11 4],'HeaderLines',24)); 卻怎麼都沒辦法達到我的目的... 拜託眾高手們能夠指導我錯誤的地方,麻煩大家了(跪) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.130.13.103

07/01 14:40, , 1F
爬文~fgetl讀掉不要的東西
07/01 14:40, 1F

07/01 14:42, , 2F
M=importdata('1.txt',' ',24) ' '代表資料用空格當分隔
07/01 14:42, 2F

07/01 14:44, , 3F
M.data=你的數據;M.textdata=檔頭
07/01 14:44, 3F

07/01 14:46, , 4F
樓上方法很讚阿~
07/01 14:46, 4F

07/02 11:36, , 5F
1F的那個方式我一直搞不懂耶...
07/02 11:36, 5F

07/02 11:38, , 6F
直接用2F的方法會讓M.data變成24x1的文字耶...
07/02 11:38, 6F

07/03 15:23, , 7F
1F方法是 M=fopen('1.txt');
07/03 15:23, 7F

07/03 15:24, , 8F
tline=fgets(M); or tline=fgetl(M)亦可
07/03 15:24, 8F

07/03 15:24, , 9F
上面那一段key24次或寫迴圈讀24次 就可以把你不要的24
07/03 15:24, 9F

07/03 15:25, , 10F
行 讀掉 讀第25次開始就是你要的數據
07/03 15:25, 10F

07/03 15:25, , 11F
看不懂就程式KEY一下 單步執行 就看的懂了
07/03 15:25, 11F

07/03 15:26, , 12F
更正 M=fopen('1.txt', 'r');
07/03 15:26, 12F
文章代碼(AID): #1CB2ZWf3 (MATLAB)