C#将文件剪切到服务器
时间: 2024-03-16 12:41:40 浏览: 77
要在C#中将文件从本地计算机剪切到FTP服务器上,可以使用FtpWebRequest和FtpWebResponse类。以下是一个简单的代码示例:
```csharp
using System;
using System.IO;
using System.Net;
class FtpMove
{
static void Main()
{
string serverUri = "ftp://ftp.example.com/remote/path/file.txt";
string localPath = @"C:\local\path\file.txt";
string username = "username";
string password = "password";
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(serverUri);
request.Method = WebRequestMethods.Ftp.UploadFile;
request.Credentials = new NetworkCredential(username, password);
using (Stream fileStream = File.OpenRead(localPath))
using (Stream ftpStream = request.GetRequestStream())
{
fileStream.CopyTo(ftpStream);
}
File.Delete(localPath);
Console.WriteLine("File moved to FTP server.");
}
}
```
在上面的示例中,我们首先创建一个FtpWebRequest对象并设置其Method属性为WebRequestMethods.Ftp.UploadFile以指定我们要上传文件。然后,我们使用NetworkCredential对象设置FTP服务器的用户名和密码。接下来,我们使用File.OpenRead方法获取本地文件的流,并使用GetRequestStream方法获取FTP服务器上文件的流。然后,我们使用CopyTo方法将本地文件的流复制到FTP服务器上文件的流,并使用File.Delete方法删除本地文件。
请注意,上面的代码示例仅演示了如何将文件从本地计算机剪切到FTP服务器上。如果要将文件从FTP服务器上剪切到本地计算机,请使用WebRequestMethods.Ftp.DownloadFile作为Method属性的值,并使用GetResponse方法获取FtpWebResponse对象,并使用GetResponseStream方法获取FTP服务器上文件的流。然后,使用File.WriteAllBytes或其他方法将该流写入本地文件,并使用FtpWebRequest的Method属性设置为WebRequestMethods.Ftp.DeleteFile来删除FTP服务器上的文件。
阅读全文