发布于 2026-01-06 0 阅读
0

使用 C# 连接 SFTP 服务器

使用 C# 连接 SFTP 服务器

SFTP(安全文件传输协议)是一种在远程计算机之间安全传输文件的方法。如果您正在使用 SFTP 服务器,并且需要使用 C# 访问它,则需要遵循以下几个步骤。在本博文中,我将介绍使用 C# 和 SSH.NET 库连接到 SFTP 服务器的基本过程。

步骤 1:安装 SSH.NET

Renci.SshNet 是一个易于使用且常用的库,可用于建立与 SFTP 服务器的连接。第一步是使用 NuGet 安装此库。您可以在 Visual Studio 中右键单击项目,选择“管理 NuGet 程序包”,然后搜索“SSH.NET”。找到 SSH.NET 程序包后,单击“安装”将其添加到您的项目中。

步骤二:建立联系

要使用 C# 建立与 SFTP 服务器的连接,您需要创建一个 SftpClient 对象并调用 Connect 方法。以下是一个示例:

using Renci.SshNet;

var host = "your.sftp.host";
var port = 22;
var username = "your.username";
var password = "your.password";

var client = new SftpClient(host, port, username, password);
client.Connect();
Enter fullscreen mode Exit fullscreen mode

在这个例子中,我们创建了一个 SftpClient 对象,并传入 SFTP 服务器的主机名、端口、用户名和密码。然后,我们调用 Connect 方法来建立连接。

步骤 3:传输文件

建立连接后,您可以使用 SftpClient 对象在本地计算机和远程 SFTP 服务器之间传输文件。以下是一个示例:

var localPath = @"C:\path\to\local\file.txt";
var remotePath = "/path/to/remote/file.txt";

using (var fileStream = new FileStream(localPath, FileMode.Open))
{
    client.UploadFile(fileStream, remotePath);
}
Enter fullscreen mode Exit fullscreen mode

在这个例子中,我们将本地文件上传到远程SFTP服务器。我们首先创建一个FileStream对象来读取本地文件,然后调用SftpClient对象的UploadFile方法将文件传输到远程服务器。

第四步:断开连接

完成 SFTP 操作后,应调用 SftpClient 对象的 Disconnect 方法来关闭连接。

client.Disconnect();
Enter fullscreen mode Exit fullscreen mode

结论

在这篇博文中,我们介绍了如何使用 C# 和 SSH.NET 库连接到 SFTP 服务器。我们涵盖了安装库、建立连接、传输文件以及断开与服务器连接等步骤。掌握了这些知识,您应该能够使用 C# 连接到 SFTP 服务器并执行各种文件传输操作。

文章来源:https://dev.to/extremetough/connect-sftp-server-using-c-6bb