在C#中,可以使用FtpWebRequest類來進行FTP操作,包括目錄操作。以下是一個示例代碼,演示如何在FTPS中進行目錄操作:
using System;
using System.Net;
class FtpDirectory
{
public static void ListDirectory(string ftpAddress, string username, string password)
{
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(ftpAddress);
request.Credentials = new NetworkCredential(username, password);
request.Method = WebRequestMethods.Ftp.ListDirectory;
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Console.WriteLine("Directory List:");
Console.WriteLine();
using (var reader = new System.IO.StreamReader(response.GetResponseStream()))
{
while (!reader.EndOfStream)
{
Console.WriteLine(reader.ReadLine());
}
}
response.Close();
}
public static void CreateDirectory(string ftpAddress, string username, string password, string newDirectoryName)
{
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(ftpAddress + "/" + newDirectoryName);
request.Credentials = new NetworkCredential(username, password);
request.Method = WebRequestMethods.Ftp.MakeDirectory;
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Console.WriteLine("Directory created successfully.");
response.Close();
}
public static void DeleteDirectory(string ftpAddress, string username, string password, string directoryName)
{
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(ftpAddress + "/" + directoryName);
request.Credentials = new NetworkCredential(username, password);
request.Method = WebRequestMethods.Ftp.RemoveDirectory;
FtpWebResponse response = (FtpWebResponse)request.GetResponse();
Console.WriteLine("Directory deleted successfully.");
response.Close();
}
public static void Main()
{
string ftpAddress = "ftp://ftp.example.com/";
string username = "username";
string password = "password";
ListDirectory(ftpAddress, username, password);
CreateDirectory(ftpAddress, username, password, "newDirectory");
DeleteDirectory(ftpAddress, username, password, "newDirectory");
}
}
在上面的示例中,ListDirectory方法用于列出FTP服務器上的目錄列表,CreateDirectory方法用于創建一個新目錄,DeleteDirectory方法用于刪除一個目錄。您可以根據需要自定義這些方法來執行不同的目錄操作。