gpt4 book ai didi

c# - 通过 FTP 上传文件 - 服务器返回错误 (550) 文件不可用,找不到文件

转载 作者:行者123 更新时间:2023-11-30 21:23:37 25 4
gpt4 key购买 nike

我正在尝试通过 FTP 将文件从我的本地计算机上传到 FTP 服务器,该服务器目前也在我的本地计算机上。我有这个潜艇,我正在打电话:

    Public Sub UploadFTPFile(ByVal ftpservername, ByVal fullfilepath, ByVal filename, ByVal username, ByVal password)

Dim clsRequest As System.Net.FtpWebRequest = _
DirectCast(System.Net.WebRequest.Create("ftp://" & ftpservername & "/" & filename), System.Net.FtpWebRequest)
clsRequest.Credentials = New System.Net.NetworkCredential(username, password)
clsRequest.Method = System.Net.WebRequestMethods.Ftp.UploadFile

clsRequest.KeepAlive = False

' read in file...
Dim bFile() As Byte = System.IO.File.ReadAllBytes(fullfilepath)

' upload file...
Dim clsStream As System.IO.Stream = _
clsRequest.GetRequestStream()
clsStream.Write(bFile, 0, bFile.Length)
clsStream.Close()
clsStream.Dispose()
End Sub

调用子时,我是这样做的:

UploadFTPFile("192.168.1.3/Temp", selectedSoundFileLong, OpenFileDialog.SafeFileName, "", "")

换句话说,在 Sub 中,这个字符串:

DirectCast(System.Net.WebRequest.Create("ftp://" & ftpservername & "/" & filename), System.Net.FtpWebRequest)

,创建以下内容:

    DirectCast(System.Net.WebRequest.Create("ftp://192.168.1.3/Temp/test.mp3"), System.Net.FtpWebRequest)

在子目录的这一行:

        Dim clsStream As System.IO.Stream = _
clsRequest.GetRequestStream()

发生此错误:

The remote server returned an error: (550) File unavailable

这可能是什么原因造成的?我正在使用免费软件 Golder FTP Server 运行 FTP 服务器。我认为它设置正确,因为使用与上面完全相同的字符串使用 Windows 资源管理器连接到 FTP 服务器效果很好。

最佳答案

您确定 webRequest 字符串中没有多余的空格吗?我相信如果字符串恰好类似于“ftp://192.168.1.3/ Temp/test.mp3”,您会收到此错误另外,请检查以确保您具有写入该服务器的正确权限。此外,请确保您的文件是 test.mp3 而不是 test.MP3。

关于c# - 通过 FTP 上传文件 - 服务器返回错误 (550) 文件不可用,找不到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1655104/

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