Re: [問題] 讀檔+迴圈問題 已回收
※ 引述《afa0525 (阿發)》之銘言:
: 先感謝之前高人幫助,還是有些許的問題
: 我想請問 下列這段程式
: 我的用意是要判別 第二和三是1的時候分別讀出他們的位置去開啟
: 2.txt和3.txt這兩個檔案,程式寫成下列樣式
: 不過在執行的時候會出現問題
: cell_end=[0 1 1 0]
: for k=1:1
: index=find(cell_end(k,:)==1) 我要找到每一列第幾行是1
: for j=1:length(index) 我想做的動作是第二行和第三行是1(不知道有無寫錯)
: str=[num2str(index),'.txt'] 第二行是1就開2.txt第三行是1開3.txt
: fid2=fopen('str','r') 開檔案的部分
: while feof(fid2)==0
: for i=1:13 此檔案有13列
: line2=fgetl(fid2);
: B(i,1)={line2}; 轉成cell
: end
: end
: end
: end
=====================不同檔案內容皆放在變數B中============================
cell_end=[0 1 1 0]
RowCount = 1;
for k=1:1
index=find(cell_end(k,:)==1)
for j=1:length(index)
str=[num2str(index(j)),'.txt'];
fid2=fopen(str,'r');
while feof(fid2)==0
line2=fgetl(fid2);
B(RowCount,1)={line2};
RowCount = RowCount + 1;
end
fclose(fid2); % 請記得close
end
end
: 問題:
: str =
: 2 3.txt
: fid2 =
: -1
: ??? Error using ==> feof
: Invalid fid.
: Error in ==> C:\MATLAB6p5\work\Unt.m
: On line 7 ==> while feof(fid2)==0
: str不是跑出2.txt和3.txt我要一起讀取這兩個檔案
: feof這地方他說使用錯誤 ? 不懂為什麼
: while feof(fid2)==0 這個不是在寫說 判別文件檔到最後的位置就停
: 請高人不吝賜教。。。謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.167.58.14
推
03/11 14:24, , 1F
03/11 14:24, 1F
→
03/11 14:25, , 2F
03/11 14:25, 2F
推
03/11 14:28, , 3F
03/11 14:28, 3F
→
03/11 14:28, , 4F
03/11 14:28, 4F
→
03/11 14:28, , 5F
03/11 14:28, 5F
→
03/11 14:31, , 6F
03/11 14:31, 6F
→
03/11 14:34, , 7F
03/11 14:34, 7F
→
03/11 14:36, , 8F
03/11 14:36, 8F
推
03/11 14:42, , 9F
03/11 14:42, 9F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 3 篇):
問題
2
10