[問題] 加快儲存檔案的速度 已回收
我們實驗室有一個計算與存檔的GUI
裡面使用for loop將一個一個資料讀取 然後再一個一個寫入檔案
由於我們處理的數據通常都在20*6左右 所以問題不大
不過現在我們需要處理到30000*18這麼大的資料量
就變成花了非常多的時間在存檔....
我試了很多方法想要加快他的速度 不過都沒成功
這些data會在先有title以後依次寫入
例如
第一步
titleA titleB titleC
1
第二步
titleA titleB titleC
1 2
以此類推 然後寫滿30000*3的矩陣
請問如何改寫可以加快存檔的速度嗎? 感謝
程式碼如下
for row = 1 : max_column_height %這裡會有三萬筆資料的長度
if (row > 1)
fwrite(fid, TAB);
end
for col = 1 : length(handles.output_column_name)
if (col == length(handles.output_column_name))
end_char = ENDL;
else
end_char = TAB;
end
if (row > length(output_column_data{col}))
fwrite(fid, end_char);
else
temp = output_column_data{col};
val = num2str(temp(row), 8);
fwrite(fid, [val end_char]);
%問題應該在這三行 一個一個數值寫入花很多時間 不過因為每個數值中間需要用TAB
%分隔 所以我不知道該怎麼改寫才可以達到同樣的效果 卻改成一次寫入檔案
%我想這樣應該會快很多
end
end
end
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 128.227.117.184
※ 編輯: cerebellum 來自: 128.227.117.184 (08/18 01:57)
→
08/18 02:13, , 1F
08/18 02:13, 1F
→
08/18 02:13, , 2F
08/18 02:13, 2F
→
08/18 02:17, , 3F
08/18 02:17, 3F
→
08/18 02:18, , 4F
08/18 02:18, 4F