先上傳[sftp操作類]
1sftphelper操作類public
class
sftphelper225
26//
sftp連線狀態
27public
bool connected }
2829
//連線sftp
30public
bool
connect()
3141
return
true;42
}43catch
4447}48
49//
斷開sftp
50public
void
disconnect()
5157}58
59//
sftp存放檔案
60public
bool put(string localpath, string
remotepath)
6169
catch
(exception ex)
7075
7677}78
7980
///81
/////sftp獲取檔案
82///
83///
伺服器路徑
84///
85///
86public
bool get(string remotepath, string
localpath)
87104
catch
(exception ex)
105108
}109
//刪除sftp檔案
110public
bool delete(string
remotefile)
111117
catch
118121
}122
123///
124///
修改檔名稱
125///
126///
127///
128///
129public
bool rename(string remotrpath, string
newpath)
130136
catch
(exception)
137141
142}
143144
///145
///建立資料夾
146///
147///
148///
149public
bool mkdir(string
remotrpath)
150156
catch
(exception)
157161
}162
163164
165166
///167
///判斷檔案sftp 是否存在
168///
169///
檔案目錄
170///
171public
bool i***istdir(string
path)
172181
catch
(exception e)
182187
}188
return
isdirexistflag;
189190
}191
192public
string createdir(string
createpath)
193201
else
202213
214if
(i***istdir(path))
215221
}222
else
223229
}230
}231
}232
}233
catch
(sftpexception e)
234237
return
mes;
238}
239240
241242
243244
245//
獲取sftp檔案列表
246public arraylist getfilelist(string remotepath, string
filetype)
247260
else
261264
}265
return
objlist;
266}
267catch
268271
}272
273//
獲取sftp檔案列表
274public arraylist getfilelist(string
remotepath)
275321
else
322325
}326
return
objlist;
327}
328catch
(exception ex)
329332
}333
334335
//登入驗證資訊
336public
class
myuserinfo : userinfo
337340
public
void setpassword(string passwd)
341342
public string getpassphrase()
343public
bool promptpassphrase(string message)
344345
public
bool promptpassword(string message)
346public
bool promptyesno(string message)
347public
void
showmessage(string message)
348}
349350
351 }
這個類有坑,這幾個坑我都修復了,除了檔案上傳這裡還有點bug 基本好像都沒問題
第乙個坑 獲取檔案列表,只能獲取某種檔案字尾的檔案,不能獲取乙個資料夾下面的所有檔案
第二個坑 ,沒有寫建立資料夾這個方法
比如說這個檔案:
單1 亂碼 單_1 沒問題, 現在確定的乙個亂碼錯誤就是 中文後面立刻馬上來個數字就亂碼!!
呼叫很簡單:
1 sftphelper ftp = newsftphelper(ftphost, user, pwd);
2bool b =ftp.connect();3if
(b)4
9 ftp.disconnect();
0 sftphelper ftp = new sftphelper(ftphost, user, pwd);1bool b =ftp.connect();2if
(b)3
16for (int i = 0; i < array.count; i++)
1727
else
283637}
383940}
41else
424647}
48 ftp.disconnect();
C 操作SFTP總結
名字解釋 sftp securefiletransferprotocol的縮寫,安全檔案傳送協議.相對於ftp多了乙個加密的過程。1.購買第三方的類庫 2.使用開源的類庫 比較流行的 sharpssh,sshnet 這裡用的是sharpssh.以下的內容基於sharpssh。具體步驟 sharpss...
c 連線SFTP上傳檔案
sftp是secure file transfer protocol的縮寫,安全檔案傳送協議。可以為傳輸檔案提供一種安全的加密方法。sftp 與 ftp 有著幾乎一樣的語法和功能。sftp 為 ssh的一部份,是一種傳輸檔案至 blogger 伺服器的安全方式。其實在ssh軟體包中,已經包含了乙個叫...
python連線sftp進行檔案操作
1 新增使用者 root docker groupadd ftpuser root docker useradd g ftpuser s sbin nologin m ftpuser root docker passwd ftpuser root docker cd home mkdir ftpus...