C 通過SFTP操作類 連線sftp

2021-09-25 21:54:14 字數 3913 閱讀 7048

先上傳[sftp操作類]

1

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 }

sftphelper操作類

這個類有坑,這幾個坑我都修復了,除了檔案上傳這裡還有點bug  基本好像都沒問題

第乙個坑   獲取檔案列表,只能獲取某種檔案字尾的檔案,不能獲取乙個資料夾下面的所有檔案

第二個坑 ,沒有寫建立資料夾這個方法

比如說這個檔案:

單1 亂碼  單_1 沒問題, 現在確定的乙個亂碼錯誤就是 中文後面立刻馬上來個數字就亂碼!!

呼叫很簡單:

1  sftphelper ftp = new

sftphelper(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...