[問題] Matlab 有辦法讀 txt 檔設定的變數嗎?已回收

看板MATLAB作者 (米虫三號)時間17年前 (2008/11/02 21:49), 編輯推噓3(3011)
留言14則, 2人參與, 最新討論串1/1
因為程式需要,不想要有些參數每次 run 都要 input 一次 所以想說是否可以在 txt 檔案內 設定好每個變數的數值 然後讓 matlab 用 load 去讀 可是我 txt 檔案這樣寫的時候 v2(變數) = 3; m 檔案試著想要把 v2 叫出來卻會跟我說 Unknown text on line number 1 of ASCII file C:\test.txt "v2". 不知道是不是不能用這個方法?還是我寫法有誤 @_@? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.117.194.56

11/02 22:03, , 1F
讀成字串進去,然後用eval
11/02 22:03, 1F

11/02 23:31, , 2F
樓上 eval 是指這個嗎 @@?
11/02 23:31, 2F

11/02 23:31, , 3F
D = {'odedemo'; 'sunspots'; 'fitdemo'};
11/02 23:31, 3F

11/02 23:31, , 4F
n = input('Select a demo number: ');
11/02 23:31, 4F

11/02 23:31, , 5F
eval(D{n})
11/02 23:31, 5F

11/02 23:31, , 6F
那如果是多個變數呢 @@?
11/02 23:31, 6F

11/03 00:00, , 7F
我不太清楚你的檔案格式,如果只是照你字面敘述的話,可
11/03 00:00, 7F

11/03 00:00, , 8F
以用fgetl將整行以字串方式讀進來,將讀進來的字串交給
11/03 00:00, 8F

11/03 00:01, , 9F
eval來處理,然後再用fgetl把下一行以字串讀進來給eval
11/03 00:01, 9F

11/03 00:01, , 10F
處理,用這方式將整個檔案處理完畢
11/03 00:01, 10F

11/03 00:33, , 11F
我本來想說可以在txt檔直接打
11/03 00:33, 11F

11/03 00:33, , 12F
變數1 = 20;
11/03 00:33, 12F

11/03 00:34, , 13F
變數2 = 30; 然後變數1,2 load 後可以直接用的 ._.
11/03 00:34, 13F

11/03 07:22, , 14F
用load是不會讀成字串的,要試試看fgetl嗎?
11/03 07:22, 14F
文章代碼(AID): #193Q_tJe (MATLAB)