2
A
回答
2
您將創建一個單元陣列:
input_file = fopen('vocab.txt');
number_of_lines = fskipl(input_file, Inf);
frewind(input_file);
cells = cell(number_of_lines, 1);
for i = 1:number_of_lines
cells{i} = fscanf(input_file, '%s', 1);
end
1
只需使用textread (filepath, format)
功能:
column1 = textread('/path/to/file', '%s'); # Where '%s' indicates how to read the values of your file: one string per index.
for i = 1:rows(column1)
word = column1{ i };
%do your thing...
end
column1
是單元陣列。這就是爲什麼我們使用{}
來訪問它。
注意:如果每行包含2個字用空格隔開,你會打電話:
[column1, column2] = textread('/path/to/file', '%s %s');
性能:textread()
是基於fscanf
的包裝。如果您確實需要文件輸入性能,那麼您可能更願意學習如何正確使用fscanf(...)
並設置緩衝區長度。請參閱特倫斯關於如何使用fscanf()
的回答。 textread()
我的筆記本電腦在〜30秒內讀取了我的100K條4列(2Mb文件)。請參閱評論以獲取更多解釋。
相關問題
- 1. 如何從八度文件中加載矩陣?
- 2. 八度矩陣
- 3. 加載包含八度矩陣的文件
- 4. 從文件加載矩陣
- 5. 加載CSV文件到八度/ MATLAB
- 6. 矩陣的八度條件合併
- 7. 八度模型矩陣
- 8. 防止Jupyter使用八度內核打印加載的矩陣
- 9. 如何從八度文件讀取矩陣?
- 10. 八度矩陣可以將字符串和數字放在一起嗎?
- 11. 從文件中加載矩陣
- 12. 將矩陣文件加載到Perl中
- 13. 字符串分割到矩陣陣列
- 14. R字符串相似度矩陣
- 15. 與矩陣的八度微積分
- 16. 使用矩陣分隔符從文本文件加載數據
- 17. 將文本或字符串添加到矩陣的行
- 18. 加載包含在python中的字符串的txt文件作爲矩陣
- 19. julia-lang有效地保存/加載稀疏矩陣到文件或從文件中加載稀疏矩陣
- 20. Game Maker - 從文件加載字符串?
- 21. Gnuplot:從文件加載字符串
- 22. 字符串矩陣的sizeof
- 23. 連接字符串到給定的矩陣的矩陣
- 24. 如何從八度的2 x 2矩陣中減去1x2矩陣的值?
- 25. 八度:指數超過矩陣尺寸
- 26. 二進制矩陣成八度圖像
- 27. GNU八度,轉換矩陣爲String
- 28. 使用範圍/八度矩陣
- 29. 在八度相交兩個矩陣
- 30. 矩陣未定義的方法,字符串到矩陣
這是一個很好的答案,甚至比接受的答案還要好。我只是想知道如何比較textread和fscanf之間的性能。 – carlossierra
非常好的評論! **實現** 'fscanf'是內建函數(用C++編寫),'textread'是一個八度函數,在其實現中調用fscanf。 fscanf更快。 (在八度調用'which'textread''來查看文件的執行情況)如果你知道你的文件,它會檢查你不會這樣做。 **性能:** 儘量不要在大文件上使用'textread()'。 5-10 Mb應該沒問題(我的筆記本電腦一次用100Mb文件凍結了3個小時)。 對於> = 25 Mb的文件,我建議將文件分成更小的塊。 – JMM