使用 .NET 将文件从 PC 上传到 FTP 似乎很容易。
有不同的解决方案来实现这一点(My.Computer.Network.UploadFile、WebClient 或 FtpWebRequest),但我有一个奇怪的问题:
我必须上传文件名中带有哈希字符的文件,fe NG#A2#C23123 #G995323#Z2333.pdf - 如果我想上传这些文件之一。NET 剪切文件名,只有文件名“NG”到达 ftp 服务器。
我该如何解决这个问题?
在尝试了不同的搜索短语后,通过谷歌解决了这个问题:
var ftpfullpath := new UriBuilder();
ftpfullpath.Scheme := 'ftp';
ftpfullpath.Host := ftphost; //z.B. "ftp.entwickler-ecke.de"
ftpfullpath.Path := ftpfilepath; //Zielpfad inkl. Dateiname, also z.B. '/foo#bar.txt'
var ftp := FtpWebRequest.Create(ftpfullpath.Uri) as FtpWebRequest;