Как проверить, существует ли Каталог FTP

$(document).ready(function(){
  $("#animate").click(function(){
    $(".jumbotron").animate({
      height: "50vh"
    });
  });
});



  
    
    
    

    
    

    Hello, world!
  
  
    
   
JQuery Practice

This is Jquery Practice Session.Jquery is a javascript library to make developers life better. Let's make our jquery learning fun.

Как я понимаю, вы хотите анимировать высоту jombotron div. Попробуйте этот код,

$("#animate").click(function(){
   $(".jumbotron").animate({
      height: "50vh"
   });
});

29
задан abatishchev 11 July 2013 в 21:13
поделиться

4 ответа

В основном перехватывает ошибку, которую я получаю при создании такого каталога.

private bool CreateFTPDirectory(string directory) {

    try
    {
        //create the directory
        FtpWebRequest requestDir = (FtpWebRequest)FtpWebRequest.Create(new Uri(directory));
        requestDir.Method = WebRequestMethods.Ftp.MakeDirectory;
        requestDir.Credentials = new NetworkCredential("username", "password");
        requestDir.UsePassive = true;
        requestDir.UseBinary = true;
        requestDir.KeepAlive = false;
        FtpWebResponse response = (FtpWebResponse)requestDir.GetResponse();
        Stream ftpStream = response.GetResponseStream();

        ftpStream.Close();
        response.Close();

        return true;
    }
    catch (WebException ex)
    {
        FtpWebResponse response = (FtpWebResponse)ex.Response;
        if (response.StatusCode == FtpStatusCode.ActionNotTakenFileUnavailable)
        {
            response.Close();
            return true;
        }
        else
        {
            response.Close();
            return false;
        }  
    }
}
17
ответ дан 28 November 2019 в 01:53
поделиться

Единственным способом, который работал для меня, была обратная логика, пытаясь создать каталог / путь (который вызовет исключение, если он уже существует), и, если это так, затем удалите его снова. В противном случае используйте Исключение, чтобы установить флаг, указывающий, что каталог / путь существует. Я довольно новичок в VB.NET, и я уверен, что есть более хороший способ кодировать это - но в любом случае вот мой код:

        Public Function DirectoryExists(directory As String) As Boolean
        ' Reversed Logic to check if a Directory exists on FTP-Server by creating the Directory/Path
        ' which will throw an exception if the Directory already exists. Otherwise create and delete the Directory

        ' Adjust Paths
        Dim path As String
        If directory.Contains("/") Then
            path = AdjustDir(directory)     'ensure that path starts with a slash
        Else
            path = directory
        End If

        ' Set URI (formatted as ftp://host.xxx/path)

        Dim URI As String = Me.Hostname & path

        Dim response As FtpWebResponse

        Dim DirExists As Boolean = False
        Try
            Dim request As FtpWebRequest = DirectCast(WebRequest.Create(URI), FtpWebRequest)
            request.Credentials = Me.GetCredentials
            'Create Directory - if it exists WebException will be thrown
            request.Method = WebRequestMethods.Ftp.MakeDirectory

            'Delete Directory again - if above request did not throw an exception
            response = DirectCast(request.GetResponse(), FtpWebResponse)
            request = DirectCast(WebRequest.Create(URI), FtpWebRequest)
            request.Credentials = Me.GetCredentials
            request.Method = WebRequestMethods.Ftp.RemoveDirectory
            response = DirectCast(request.GetResponse(), FtpWebResponse)
            DirExists = False

        Catch ex As WebException
            DirExists = True
        End Try
        Return DirExists

    End Function

WebRequestMethods.Ftp.MakeDirectory и WebRequestMethods.Ftp.RemoveDirectory являются Методы, которые я использовал для этого. Все остальные решения у меня не сработали.

Надеюсь, это поможет

-2
ответ дан dragonfly 28 November 2019 в 01:53
поделиться

Перейдите в родительский каталог, выполните команду «ls» и проанализируйте результат.

0
ответ дан 28 November 2019 в 01:53
поделиться

Что бы это ни стоило, вы значительно облегчите себе жизнь с FTP, если будете использовать FTP компонент EnterpriseDT. Он бесплатен и избавит вас от головной боли, поскольку сам занимается командами и ответами. Вы просто работаете с простым и понятным объектом.

-6
ответ дан 28 November 2019 в 01:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: