2012-12-03 74 views
0

我目前使用文本讀取加載文本文件,以便稍後顯示在我的GUI上的編輯字段中。然而,我在Linux中,發現內存沒有被釋放 - 所以,我的程序非常慢,我不得不關閉MATLAB,因爲我一直加載越來越多的文本文件。有沒有辦法顯示我的文本文件,而無需將全部內容加載到內存中?MATLAB Linux替代文本讀取

+3

Matlab文檔建議使用'textscan',而不是'textread'。但是,這不會解決您的問題。問題不在於功能,而在於產出。 'textread' /'textscan'使用單元陣列,這是一個真正的內存豬。解決此問題的最常見方法是將文件分塊導入,然後將其轉換爲內存密集型格式。參見[textscan-in-matlab-uses-rap-ram-comparison-method-in-r](http://stackoverflow.com/questions/12475226/textscan-in-matlab-uses-excessive-ram -compared-to-similar-method-in-r)瞭解更多細節。 –

回答

0

做它的老派,類UNIX的方式... fopen,fread,fclose。

A = fread(fid, count, precision, skip, machineformat) 

「計數」給你數據的長度看,「精」是「UCHAR」,「跳過」是從哪裏開始閱讀。 A是你的char數組/字符串。