gpt4 book ai didi

.net - 上传多个 FTP 文件

转载 作者:行者123 更新时间:2023-12-04 15:16:12 25 4
gpt4 key购买 nike

需求,每晚上传1500张jpg图片,下面的代码多次打开和关闭连接,不知道有没有更好的方法。

...这是一个代码片段,所以这里的变量是在别处定义的

Dim picClsRequest = DirectCast(System.Net.WebRequest.Create(ftpImagePath), System.Net.FtpWebRequest)
Dim picClsStream As System.IO.Stream

Dim picCount As Integer = 0
For i = 1 To picPath.Count - 1
picCount = picCount + 1
log("Sending picture (" & picCount & " of " & picPath.Count & "):" & picDir & "/" & picPath(i))
picClsRequest = DirectCast(System.Net.WebRequest.Create(ftpImagePath & "/" & picPath(i)), System.Net.FtpWebRequest)
picClsRequest.Credentials = New System.Net.NetworkCredential(ftpUsername, ftpPassword)
picClsRequest.Method = System.Net.WebRequestMethods.Ftp.UploadFile
picClsRequest.UseBinary = True
picClsStream = picClsRequest.GetRequestStream()

bFile = System.IO.File.ReadAllBytes(picDir & "/" & picPath(i))
picClsStream.Write(bFile, 0, bFile.Length)
picClsStream.Close()

Next

一些评论:

是的,我知道 picCount 是多余的...这是深夜。

ftpImagePath, picDir, ftpUsername, ftpPassword 都是变量

是的,这是未加密的

这段代码工作正常,我正在寻找优化

相关问题: FTP Upload multiple files without disconnect using .NET

最佳答案

如果您想一次发送多个文件(如果顺序不重要),您可以考虑异步发送文件。查看各种 Begin* 和 End* 方法,例如 FtpWebRequest.BeginGetResponseFtpWebRequest.EndGetResponse等等。

此外,您可以查看 FtpWebRequest.KeepAlive属性,用于保持连接打开/缓存以供重用。

嗯,您也可以尝试创建一个巨大的 tar 文件,并通过一个连接在一个流中发送单个文件;)

关于.net - 上传多个 FTP 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2384513/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com