首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取文件路径

问获取文件路径
EN

Stack Overflow用户
提问于 2012-10-15 20:25:20
回答 5查看 10.2K关注 0票数 2

是否有方法获取计算机上存在的文件的完整路径?例如,我希望获得桌面文件夹中文件的完整路径。

我试着用:

代码语言:javascript
复制
  File f = new File("help.chm");

  String f2=f.getAbsolutePath();
  f3=f3.replaceAll("\\\\","/" );
  System.out.println("Path:"+f3);

但它给了我这样的项目道路:

C:/Users/toshiba/Documents/NetBeansProjects/test/help.chm

尽管文件不在那里。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-10-15 20:42:11

由于其他答案不涉及你的问题,以下是我的评论:

要获得文件的路径,首先需要告诉java程序它在哪里或如何找到它。

对于特定的示例,您可以使用:System.getProperty("user.home") + "/Desktop";获取桌面路径,然后可以在桌面上的文件夹中搜索匹配的文件名。

阅读此处了解如何搜索文件: docs.oracle.com/javase/tutorial/essential/io/find.html

票数 0
EN

Stack Overflow用户

发布于 2012-10-15 20:29:57

如果使用file (即relative path )创建new File("filename"),则无法使用file.getAbsolutePath()获取文件的绝对路径,因为相对路径是根据默认的用户主目录或JVM路径构建的。

看看Java:-

路径名,无论是抽象的还是字符串形式的,可以是绝对的,也可以是相对的。绝对路径名是完整的,因为为了找到它所表示的文件,不需要其他信息。 相反,相对路径名必须根据从其他路径名获取的信息来解释。默认情况下,java.io包中的类总是根据当前用户目录解析相对路径名。该目录由系统属性user.dir命名,通常是调用该虚拟机的目录。

因此,要获得本例的absolute path,实际上您必须自己编写路径。获取absolute path,直到保存file的目录,并将file name附加到其中。

票数 2
EN

Stack Overflow用户

发布于 2012-10-15 20:27:53

File是文件路径的表示,而不一定是磁盘上存在的文件--即File对象不一定存在于磁盘上才不是null。

这就是为什么有File.exists()方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12903436

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档