如何用Java获取远程服务器中指定目录下的所有文件夹名

如何用Java获取远程服务器中指定目录下的所有文件夹名,第1张

//创建一个ftpclient对象

FTPClient fc=new FTPClient();

//创建连接

fcconnect("ip地址", 端口号);

//登录

fclogin("用户名","密码");

//校验登陆

reply = fcgetReplyCode();

if (!FTPReplyisPositiveCompletion(reply)) {

fcdisconnect();

}           

//切换到指定地址

fcchangeWorkingDirectory("地址");

//获取该目录下的所有文件

FTPFile[] fs=fclistFiles();

for(FTPFile ff:fs){

  Systemoutprintln(ffgetName());

}

//注销退出

fclogout();            

获取一个目录下的所有文件和目录方法:

import javaioFile;

public class FileTest {

    public static void main(String[] args) {

        /

          将目标目录封装成 File 对象。

         /

        File dir = new File("/Users/zym/Desktop/Mac应用程序");

        /

          获取目录下的所有文件和文件夹

         /

        String[] names = dirlist();

        for (String name : names) {

            Systemoutprintln(name);

        }

    }

}

通过文件过滤器获取某个目录下的文件,例如所有的 txt、doc文件。

过滤器:

import javaioFile;

import javaioFilenameFilter;

public class FilterByDoc implements FilenameFilter {

    @Override

    public boolean accept(File dir, String name) {

        return nameendsWith("doc");

    }

}

获取某个目录下的按照过滤器规则的所有文件:

import javaioFile;

public class FileTest {

    public static void main(String[] args) {

        /

          将目标目录封装成 File 对象。

         /

        File dir = new File("/Users/zym/Desktop/Mac应用程序");

        /

          通过过滤器获取目录下的所有的 doc 文件

         /

        String[] names = dirlist(new FilterByDoc());

        for (String name : names) {

            Systemoutprintln(name);

        }

    }

}

希望能对您有所帮助!

java中获得一个文件夹中的所有文件名代码如下:

package comreadfile;

import javaioFile;

public class GetAllFiles {

public static void main(String[] args) {

//路径   这里写一个路径进去

String path="F:\\QQ文档";

//调用方法

getFiles(path);

}

 

/

递归获取某路径下的所有文件,文件夹,并输出

/

public static void getFiles(String path) {

File file = new File(path);

// 如果这个路径是文件夹

if (fileisDirectory()) {

// 获取路径下的所有文件

File[] files = filelistFiles();

for (int i = 0; i < fileslength; i++) {

// 如果还是文件夹 递归获取里面的文件 文件夹

if (files[i]isDirectory()) {

Systemoutprintln("目录:" + files[i]getPath());

getFiles(files[i]getPath());

} else {

Systemoutprintln("文件:" + files[i]getPath());

}

}

} else {

Systemoutprintln("文件:" + filegetPath());

}

}

}

扩展资料:

如果想要获得当前文件中的文件名只需要String [] fileName = filelist();就可以了。

如果要包括文件中的文件名就可以用递归的方式。下面是两个具体的实现。

其中public static String [] getFileName(String path)是只得到当前文件中的文件名。

public static void getAllFileName(String path,ArrayList<String> fileName)是包括当前文件及其子文件的文件名。

参考资料:

百度百科-Java

import javaioFile;

import javaioFileFilter;

public class C {

public static void main(String[] args) {

String root = "C:\\";

File file = new File(root);

//folders保存所有根目录下面的文件夹。。

File[] folders = filelistFiles(new FileFilter(){

public boolean accept(File fl) {

return flisDirectory();

}

});

}

}

最原始的方法可以遍历所有盘符文件

public class Path

{

private final List<File> list=new ArrayList<File>();

private String directory;

public Path(String s)

{

thisdirectory=s;

}

private void genPath()

{

File[] roots=FilelistRoots();

for(File root:roots)

searchExists(root);

}

private void searchExists(File file)

{

String tempPath=filegetAbsolutePath();

if(tempPathcontains(directory)

&&(tempPathsubstring(tempPathlastIndexOf(directory))equals(directory)))

listadd(file);

if(fileisDirectory()&&filelist()!=null)

{

File[] files=filelistFiles();

for(File f:files)

{

searchExists(f);

}

}

}

public void listPath()

{

genPath();

for(File file:list)

Systemoutprintln(filegetAbsolutePath());

}

public static void main(String[] args) throws UnsupportedEncodingException

{

Path p=new Path("CS16");

plistPath();

}

}

测试正确,但性能太差,考虑用好的文件查找算法和多线程来作

平时写程序的时候,很多时候提示文件找不到,而抛出了异常,现在整理如下 一 相对路径的获得 说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目) String relativelyPath=SystemgetProperty(

一个例子,如果有一个Test文件夹里面有testjava和hellotxt如果你想用testjava *** 作hellotxt

只要在testjava中这样写File file=new File("hellotxt");//这样就是相对路径。如果文件结构是

Test文件夹

|------testjava

|------hellotxt

|------source文件夹

|---------worldtxt

如果想在testjava中 *** 作worldtxt。只要这样写File file=new File("source/worldtxt");

另外,在web开发中/代表项目文件夹根目录,当然也有可能代替webapps,区分方法是:如果/开头的uri是给浏览器解析则/代表webapps,如果是给服务器后台解析,则代表项目文件

以上就是关于如何用Java获取远程服务器中指定目录下的所有文件夹名全部的内容,包括:如何用Java获取远程服务器中指定目录下的所有文件夹名、java怎么获取一个目录下的所有文件名、java中怎样获得一个文件夹中的所有文件名等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/9625935.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存