在 C# 中,你可以使用 'FtpWebRequest' 类来连接到 FTP 服务器,并使用 'ListDirectoryDetails' 方法来列出 FTP 目录的文件和文件夹。以下是一个示例代码,用于判断 FTP 上是否存在某个文件夹,如果不存在则创建它。

using System;
using System.Net;

class Program
{
    static void Main(string[] args)
    {
        string ftpUrl = 'ftp://ftp.example.com/';
        string folderName = 'folder';

        if (DirectoryExists(ftpUrl, folderName))
        {
            Console.WriteLine('Folder already exists.');
        }
        else
        {
            CreateDirectory(ftpUrl, folderName);
            Console.WriteLine('Folder created successfully.');
        }
    }

    static bool DirectoryExists(string ftpUrl, string folderName)
    {
        FtpWebRequest request = (FtpWebRequest)WebRequest.Create(ftpUrl + folderName);
        request.Method = WebRequestMethods.Ftp.ListDirectoryDetails;
        request.Credentials = new NetworkCredential('username', 'password');

        try
        {
            FtpWebResponse response = (FtpWebResponse)request.GetResponse();
            response.Close();
            return true;
        }
        catch (WebException ex)
        {
            FtpWebResponse response = (FtpWebResponse)ex.Response;
            if (response.StatusCode == FtpStatusCode.ActionNotTakenFileUnavailable)
            {
                response.Close();
                return false;
            }
            else
            {
                throw;
            }
        }
    }

    static void CreateDirectory(string ftpUrl, string folderName)
    {
        FtpWebRequest request = (FtpWebRequest)WebRequest.Create(ftpUrl + folderName);
        request.Method = WebRequestMethods.Ftp.MakeDirectory;
        request.Credentials = new NetworkCredential('username', 'password');

        using (FtpWebResponse response = (FtpWebResponse)request.GetResponse())
        {
            Console.WriteLine($'Folder created successfully. Response: {response.StatusDescription}');
        }
    }
}

请注意,你需要将 'ftpUrl' 替换为你的 FTP 服务器的地址,以及将 'folderName' 替换为你要检查和创建的文件夹的名称。另外,你还需要提供有效的用户名和密码来进行 FTP 认证。

C# 判断 FTP 文件夹是否存在,不存在则创建 - 完整示例代码

原文地址: https://www.cveoy.top/t/topic/qx02 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录