一聚教程网:一个值得你收藏的教程网站

热门教程

java 获取已知文件扩展名的代码

时间:2022-06-29 01:39:38 编辑:袖梨 来源:一聚教程网

一、需求分析

1、获取已知文件的扩展名----------------------------------------------》要先读到文件,得到文件名
2、abc.txt的扩展名是txt, abc.Java.txt的扩展名也是txt-------------》获取扩展名的正确性保证

二、技术难点

1、将一个给出的路径转换成一个文件对象,并获取到完整的文件名

直接用new File()类就可以实现,然后通过getName获取到文件名

2、怎么通过文件名获取到扩展名?

通过对文件名进行正则表达式的分割可以得到

代码实现:(PS添加了给出指定目录获取循环目录下的文件扩展名的函数)

 

 代码如下复制代码

packagecom.itheima;

 

importjava.io.File;

 

/**

 * 7、 编写程序获取已知文件的扩展名. 注意: abc.txt的扩展名是txt, abc.java.txt的扩展名也是txt.

 *

 * @author 281167413@qq.com

 */

 

publicclassTest7 {

 

    publicstaticvoidmain(String[] args) {

        String srcPath ="D:/java/java.copy.doc";

 

        getFilenameExtension(srcPath);

    }

 

    // 获取指定文件的扩展名

    publicstaticvoidgetFilenameExtension(String srcPath) {

        // 将源路径转换成文件对象

        File file =newFile(srcPath);

 

        if(file.isFile()) {

            String name = file.getName();

 

            String[] exName = name.split("\.");

 

            System.out.println(exName[exName.length -1]);

        }else{

            System.out.println("It's not a file!");

        }

    }

 

    // 获取指定目录下的文件的扩展名

    publicstaticvoidgetDirFilenameExtension(String srcPath) {

        // 将源路径转换成目录对象

        File[] file = (newFile(srcPath)).listFiles();

        for(inti =0; i < file.length; i++) {

            if(file[i].isDirectory()) {

                // 准备复制的源文件夹

                srcPath = srcPath +"/"+ file[i].getName();

                getDirFilenameExtension(srcPath);

            }else{

                // 源文件

                File sourceFile = file[i];

                // 文件名字

                String name = sourceFile.getName();

 

                String[] exName = name.split("\.");

 

                System.out.println(exName[exName.length -1]);

            }

        }

    }

}

 

热门栏目