3

我有 DirectoryPath:
data/data/in.com.jotSmart/app_custom/folderName/FileName
它作为字符串存储在ArrayList

ArrayList<String> a;
a.add("data/data/in.com.jotSmart/app_custom/page01/Note01.png");

现在,我想从这条路径获取page01一个单独的字符串和Note01一个单独的字符串,并将其存储到两个字符串变量中。我尝试了很多,但我无法得到结果。如果有人知道帮助我解决这个问题。

4

4 回答 4

12

f.getParent()

返回此抽象路径名的父目录的路径名字符串,如果此路径名未命名父目录,则返回 null。

例如

    File f = new File("/home/jigar/Desktop/1.txt");

    System.out.println(f.getParent());// /home/jigar/Desktop
    System.out.println(f.getName());  //1.txt

更新:(基于有问题的更新)

如果data/data/in.com.jotSmart/app_custom/page01/Note01.png是文件系统中文件的有效表示,则

for(String fileNameStr: filesList){
  File file = new File(fileNameStr);
  String dir = file.getParent().substring(file.getParent().lastIndexOf(File.separator) + 1);//page01
  String fileName = f.getName();
  if(fileName.indexOf(".")!=-1){
     fileName = fileName.substring(0,fileName.lastIndexOf("."));
   }
}
于 2012-07-07T07:31:39.007 回答
2

对于文件夹名称:file.getParentFile().getName().

对于文件名:file.getName().

于 2018-11-30T17:17:01.723 回答
1

用这个路径创建一个文件...然后使用这两种方法获取目录名和文件名。

file.getParent(); // dir name from starting till end like data/data....../page01
file.getName(); // file name like note01.png

如果您需要目录名称为 page01,您可以从 getparent 获取路径的子字符串。

于 2012-07-07T07:31:33.480 回答
0

如何使用.split

answer = str.split(delimiter);
于 2012-07-07T07:28:24.313 回答