3 回答

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超7個(gè)贊
我使用ftputil實(shí)現(xiàn)此替代方法:
連接到ftp服務(wù)器
列出目錄中的所有文件
在每個(gè)文件上調(diào)用stat()
等待N秒
對(duì)于每個(gè)文件:再次調(diào)用stat()。如果結(jié)果不同,請(qǐng)?zhí)^(guò)此文件,因?yàn)樗窃谧罱鼛酌腌妰?nèi)修改的。
如果stat()結(jié)果相同,則下載文件。
整個(gè)ftp獲取是古老而過(guò)時(shí)的技術(shù)。我希望客戶下次可以使用現(xiàn)代的http API :-)

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超11個(gè)贊
這是FTP傳輸?shù)慕?jīng)典問(wèn)題。我發(fā)現(xiàn)的唯一最可靠的方法是發(fā)送文件,然后發(fā)送第二個(gè)簡(jiǎn)短的“標(biāo)記”文件,只是告訴接收者第一個(gè)文件的傳輸已完成。您可以使用文件命名約定,僅檢查第二個(gè)文件是否存在。
您可能會(huì)很喜歡,然后將第二個(gè)文件的內(nèi)容作為第一個(gè)文件的校驗(yàn)和。然后,您可以驗(yàn)證第一個(gè)文件。(第二個(gè)文件沒(méi)有問(wèn)題,因?yàn)槟坏鹊轿募笮?校驗(yàn)和大?。?/p>
當(dāng)然,這只有在您可以使發(fā)送者發(fā)送第二個(gè)文件的情況下才有效。
- 3 回答
- 0 關(guān)注
- 994 瀏覽
添加回答
舉報(bào)