[討論] 請問textscan用法

作者: profyang (prof)   2019-03-24 18:52:03
本來matlab讀檔都寫得很隨意(用fgetl之類的一行行讀)
據說大檔案但有規律的用textscan讀起來蠻快的
但我的檔案內容類似這樣:
0: 0
1.55853637077072
1.55853643267316
1.55853630886829
1.55853624696587
-0.00134146529463404
1
1: 1e-13
1.55853637077072
1.55853643267316
1.55853630886829
1.55853624696587
-0.00134146529463405
1
2: 2e-13
1.55853637077072
1.55853643267316
1.55853630886829
1.55853624696587
-0.00134146529463405
2
總之應該可以看出就是0:開頭到1:前一行是一組
1:到2:前一行又是一組 以上共是3組
而我面對的檔案總共有至少上萬組甚至十萬組要讀
這樣要怎麼寫比較好?直接textscan(fid,'%f')的話卡了個0:和1:這種東西
想把':'和'\n'換行符號都當成delimiter好像也不讓我這樣寫:
textscan(fid,'%f','delimiter',{':','\n'})
又不想一行行fgetl之類的判斷然後讀 有沒有比較好的寫法呢?謝謝!
作者: book5601 (蒼瀾野獸)   2019-03-24 23:26:00
你的檔案來源如果是自己寫的程式跑出來的值,就直接該改程式碼變成好讀不就好了。如果不是,我可能會直接Ctrl+H取代不要的符號哈哈哈(趕時間的做法
作者: physbook (路克)   2019-03-25 08:00:00
法1. 先用文字編輯器把換行符號取代成自訂的分隔符號法2. 搭配迴圈讀各組的值

Links booklink

Contact Us: admin [ a t ] ucptt.com