Re: [問題] ftp下載檔案已回收

看板MATLAB作者 (暱稱可以吃嗎)時間14年前 (2011/04/20 16:58), 編輯推噓0(004)
留言4則, 1人參與, 最新討論串3/3 (看更多)
※ 引述《aaaaagw (不愛看書)》之銘言: : ※ 引述《V123456 (V123456)》之銘言: : : 各位matlab高手們好 : : 小妹現在正在寫一個可以從FTP下載檔案的程式碼 : : 使用到了MATLAB內建的函式庫"ftp"跟"mget" : : 以下為我寫的程式碼 : : (因為是私人ftp做測試所已不把密碼打出來了) : : f = ftp('140.115.155.228','QQ','xxxxxxxx'); : : mget(f,'hello world!.txt'); : : 但compile之後 : : ftp的連線成功 : : 且matlab資料夾裡也成功出現了一個名為"hello world!"的txt檔 : : 但是打開那個txt檔之後裡面卻空無一物 : : 重複試了幾次其他種檔案例如jpg或ppt檔 : : 也是一樣的情形 : : 查了其他的網站資料之後也找不到程式碼有錯的地方 : : 想請各位matlab高手們幫小妹解答~!! : 不好意思引用一下你的標題,我FTP也出現了問題 : 我程式碼如下 : clc,clear; : A={'1.jpg', '2.jpg', '3.jpg'}; >檔案名稱陣列 : for i=0:2 : file_name=A(i); >這裡是迴圈 : ftp_obj=ftp('210.96.59.210'); : mget(ftp_obj,file_name); : end : >程式結束 : 這段程式碼是想說用迴圈載入異質陣列的方式去下載三個檔案 : 結果出現了錯誤,錯誤訊息如下 : Error in ==> ftp.mget at 32 : if any(str == '*') >我理解這個錯誤訊息是說是要要求字串 : Error in ==> ftptrans at 6 : mget(ftp_obj,file_name); >所以這邊收不到字串 : 我單獨把A(1)這樣打出來有出現1.jpg,所以我認為這樣是字串。 : 但是一用迴圈塞入FTP就出現錯誤。 : 拜託各位高手幫忙解決...感謝/(ˇ口ˇ)\ 不好意思我又有問題了,我目前的FTP寫在GUI介面裡面 介面如下 ------------------- | | | TEXT | | | | | |------- -------- | | 按鈕1 | 按鈕2 | | ------------------- 以下是按鈕1的程式碼 function pushbutton1_Callback(hObject, eventdata, handles) A={'1.jpg' , 'asdqe.asv'}; %這裡是陣列,存到一個A變數 set(handles.text1, 'String', A); %顯示A變數到text上 for i=1:2 %以下是送出檔案 file_name=A{i}; ftp_obj=ftp('我的ftp的ip'); %ip我隱藏了 cd(ftp_obj,'smallstar'); mget(ftp_obj,file_name); end run('D:\pro\asdqe.m'); ------------------------分隔線----------------------------------- 以下是按鈕2的程式碼 function pushbutton2_Callback(hObject, eventdata, handles) A2={'asdqe.m','denzhiuaipu.JPG','denzhiuaipu.mat'}; %寫法一樣,只是換成別的檔案 set(handles.text1, 'String', A2); for i=1:3 file_name=A2{i}; ftp_obj=ftp('120.96.59.205'); cd(ftp_obj,'smallstar'); %這邊讀取的資料夾不同 mget(ftp_obj,file_name); end run('D:\pro\asdqe.m'); ----------------------分隔線------------------------------------- 我的當伺服器用的電腦是用xp的iis的ftp 連線數10 現在的問題是:我想要用兩台電腦執行這gui程式,同時連線抓檔案。 但是當我同時兩台電腦按下按鈕(不管是按鈕1或是按鈕2)之後 其中一台會傳送成功,另一台則會出現錯誤訊息 錯誤訊息如下: ??? Error using ==> connect at 19 Could not open a connection to "IP", port "21". %這邊IP我隱藏了 Error in ==> ftp.ftp at 73 connect(h) Error in ==> transtor>pushbutton1_Callback at 82 ftp_obj=ftp('IP'); Error in ==> gui_mainfcn at 96 feval(varargin{:}); Error in ==> transtor at 42 gui_mainfcn(gui_State, varargin{:}); Error in ==> @(hObject,eventdata)transtor('pushbutton1_Callback',hObject,eventdata,guidata(hObject)) ??? Error while evaluating uicontrol Callback 我自己的判斷是21PORT似乎不能夠同時接受兩者所送出去的訊息 假設這一點是正確的,我該用什麼方式去做解決呢?? 是否有提示可提醒我ㄧ下呢?? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 120.96.59.201

04/20 17:01, , 1F
不好意思我忘了說,如果出現錯誤訊息,我每次都得重新開MA
04/20 17:01, 1F

04/20 17:01, , 2F
matlab才能重新使用這GUI
04/20 17:01, 2F

04/21 13:19, , 3F
我認為也許是兩台電腦發送同樣的訊息造成回傳錯誤
04/21 13:19, 3F

04/21 13:19, , 4F
所以造成其中一台的訊號被蓋掉所以出錯...
04/21 13:19, 4F
文章代碼(AID): #1Dhg0gaH (MATLAB)
文章代碼(AID): #1Dhg0gaH (MATLAB)