java怎么从绝对路径中取出除了文件名的路径
关注:224 答案:3 mip版
解决时间 2021-02-05 14:51
提问者日光獨自傾城
2021-02-04 21:19
例如:我的函数的参数给进去是绝对路径:E:\com\1.txt
想让返回的结果是E:\com,应该怎么取出来?求大神解决
最佳答案
二级知识专家月洸芐啲溫拵
2021-02-04 22:18
如果是多个文件的话,可以通过遍历某个文件夹查找指定文件的,之后分别记录文件名称和对应的绝对路径:
import java.io.File;
import java.util.HashMap;
public class Test1 {
static HashMap filelist=new HashMap();
public static void find(String path){
File file=new File(path);
File[] files = file.listFiles();
//如果文件数组为null则返回
if (files == null)
return;
for (int i = 0; i < files.length; i++) {
if (files[i].isDirectory()) {
//判断是不是文件夹,如果是文件夹则继续向下查找文件
find(files[i].getAbsolutePath());
} else {
//记录文件路径
String filePath = files[i].getAbsolutePath().toLowerCase();
//记录文件名
String fileName=files[i].getName().toLowerCase();
// System.out.println("---"+strFileName);
filelist.put(fileName, filePath);
}
}
}
public static void main(String[] args) {
//需要遍历的路径,也就是你要查找文件所在的路径
String path="D:\\kpi\\";
find(path);
System.out.println("kpi.9的路径:"+filelist.get("kpi.9"));
//输出结果:d:\kpi\kpi.9
}
}
全部回答
1楼白胡子大佬
2021-02-05 00:44
file.getPanrentFile().getAbsolutepath
2楼距离和很远
2021-02-04 23:26
使用String对象的subString方法,第一个参数设置为0,第二个参数设置为你要截取到的字符的下标,如本题,应该是indexOf("1")。意思是获取子字符串从下标0开始到第一个字符串“1”的下标(不包括1)。或者通用一点的写法就是获取最后一个“\”的下标,再+1
我要举报
如以上问答内容为低俗/色情/暴力/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!
→点此我要举报以上信息!←
推荐资讯