如何用java代码得到文件夹的路径(即一个方法,输入文件夹名称,返回路径)

pink629的代码效率太低了,和我开始实现的是一样的,有没有更好的方法????... pink629 的代码效率太低了,和我开始实现的是一样的,有没有更好的方法???? 展开
 我来答
pink629
2008-09-22 · TA获得超过236个赞
知道答主
回答量:133
采纳率:0%
帮助的人:181万
展开全部
最原始的方法可以遍历所有盘符文件

public class Path
{
private final List<File> list=new ArrayList<File>();
private String directory;

public Path(String s)
{
this.directory=s;
}

private void genPath()
{
File[] roots=File.listRoots();
for(File root:roots)
searchExists(root);

}

private void searchExists(File file)
{
String tempPath=file.getAbsolutePath();
if(tempPath.contains(directory)
&&(tempPath.substring(tempPath.lastIndexOf(directory)).equals(directory)))
list.add(file);
if(file.isDirectory()&&file.list()!=null)
{
File[] files=file.listFiles();
for(File f:files)
{
searchExists(f);
}
}
}

public void listPath()
{
genPath();
for(File file:list)
System.out.println(file.getAbsolutePath());
}
public static void main(String[] args) throws UnsupportedEncodingException
{
Path p=new Path("CS1.6");
p.listPath();
}
}
测试正确,但性能太差,考虑用好的文件查找算法和多线程来作
fantasycs
2008-09-22 · 超过16用户采纳过TA的回答
知道答主
回答量:62
采纳率:0%
帮助的人:0
展开全部
File file = new File("D:\\eclipse3.1\\config.cfg")

file.getPath()
将此抽象路径名转换为一个路径名字符串。

file.isDirectory()
测试此抽象路径名表示的文件是否是一个目录。

file.getName()
返回由此抽象路径名表示的文件或目录的名称。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式