2010-12-21 39 views

答えて

2

ftp.isDirectory(String path) //returns true, false 

そして、ディレクトリのパーミッション(chmodコマンド)を取得します、私はそれを考え出したと思う。私はまだこれをテストするために得たhavent、私はそれがtrikにこのことができます/作品

FTPFile file[]; 
file = new FTPFile[ftpClient.listFiles().length]; 
for (int i = 0; i<file.length; i++) { 
if (file[i].getName() == "directory name") { 
    if (file[i].isDirectory()) { 
    //Do stuff if it is a directory here 
     if (file[i].hasPermission(access, permission) { 
     //Do whatever you want with permissions - access and permission arguments are int's 
         } 
    } 
} 
} 

希望をやると思います。これはかなり冗長な方法のようにも見えるので、もっと良い方法があるかもしれません。 、あなたがチェックする必要があるディレクトリに作業ディレクトリを変更するには、このライブラリとAndroid

11

しようとする新しいイムIDK:

boolean directoryExists = FTPClient.changeWorkingDirectory("path/to/somedir") 
+1

これは本当にこれを行うための唯一の方法と思われます。私はそれがクライアントよりもFTPの限界だと思う。 – MaddHacker

0

をリモートホストはそれをサポートしている場合は、最も簡単な方法はmlistFile()です。あなただけをチェックする必要があるもの

if (ftpClient.featureValue("MLST") != null) { 
    FTPFile file = ftpClient.mlistFile(null); 
    boolean b = file.hasPermission(FTPFile.USER_ACCESS, FTPFile.WRITE_PERMISSION); 
} 
3

が、これはあなたが整数

250値を返しますちょうどftpClient.cwd("your Directory Name")

です - ファイルが存在する場合

550

OR

- ファイルdoesnの場合は」 t存在Ex

例:

if(ftpClient.cwd(uploadDirectoryPath)==550){ 
    System.out.println("Directory Doesn't Exists"); 
}else if(ftpClient.cwd(uploadDirectoryPath)==250){ 
    System.out.println("Directory Exists"); 
}else{ 
    System.out.println("Unknown Status"); 
}