Java - 从文件夹中获取没有扩展名的文件名

时间:2015-05-12 10:03:00

标签: java filenames

我使用此代码获取文件夹中文件的绝对路径

public void addFiles(String fileFolder){
        ArrayList<String> files = new ArrayList<String>();     
        fileOp.getFiles(fileFolder, files);
}

但我想只获取文件的文件名(没有扩展名)。我怎么能这样做?

4 个答案:

答案 0 :(得分:1)

我不认为这种方法存在。您可以获取文件名并获取.的最后一个索引并在此之后截断内容并获取File.separator的最后一个索引并在此之前删除内容。

你有你的文件名。

或者您可以使用apache commons IO中的FilenameUtils并使用以下

FilenameUtils.removeExtension(fileName);

答案 1 :(得分:0)

这是一个非常好的方法 - 您可以使用FilenameUtils.removeExtension

另请参阅:How to trim a file extension from a String

答案 2 :(得分:0)

此代码将执行删除文件扩展名和打印名称的工作:

      public static void main(String[] args) {
        String path = "C:\\Users\\abc\\some";
        File folder = new File(path);
        File[] files = folder.listFiles();
        String fileName;
        int lastPeriodPos;
        for (int i = 0; i < files.length; i++) {
            if (files[i].isFile()) {
                fileName = files[i].getName();
                lastPeriodPos = fileName.lastIndexOf('.');
                if (lastPeriodPos > 0)
                fileName = fileName.substring(0, lastPeriodPos);
                System.out.println("File name is " + fileName);
            }
        }
    }

如果您对标准库没问题,那么请使用Apache Common,因为它有现成的方法。

答案 3 :(得分:0)

String filePath = "/storage/emulated/0/Android/data/myAppPackageName/files/Pictures/JPEG_20180813_124701_-894962406.jpg"


String nameWithoutExtension = Files.getNameWithoutExtension(filePath);