如何在java中打开位于项目文件夹以外的文件夹中的文本文件(或任何文件)

发布于 2024-11-15 08:57:12 字数 464 浏览 2 评论 0原文

 FileDialog fc=new FileDialog (new Frame(),"Test File Dialog");
   fc.setVisible(true);
   String selectedFile=fc.getFile();
   File file = new File(selectedFile);
   String absolutepath = file.getAbsolutePath();

你好,我正在尝试获取文本文件的完整文件路径。该文件位于我的 java 项目文件夹之外的不同文件夹中,但位于同一驱动器上。当我尝试使用上面的代码打开它时,我在 SelectedFile 中获得了正确的文件名,但 file.getAbsolutePath() 不会返回正确的文件位置。 file.getAbsolutePath() 返回我的 java 项目的文件夹。

请帮助我获取我在文件对话框中选择的任何文件的正确文件位置

 FileDialog fc=new FileDialog (new Frame(),"Test File Dialog");
   fc.setVisible(true);
   String selectedFile=fc.getFile();
   File file = new File(selectedFile);
   String absolutepath = file.getAbsolutePath();

hi, am trying to get the full file path of a text file. the file is in a different folder outside my java project folder but on the same drive. when i try to open it with the above code, am getting the correct file name in SelectedFile but file.getAbsolutePath() is doesnot return the correct file location. file.getAbsolutePath() is returning my java project's folder.

Please help me get the correct file location for any file i select in the File Dialogue

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

神魇的王 2024-11-22 08:57:12

坚持使用 AWT 有什么特别的原因吗?

否则,我建议您使用 JFileChooser 对话框。以下是一些相关链接,可帮助您开始使用:

Any particular reason for sticking to AWT?

Otherwise I suggest you use a JFileChooser dialog instead. Here are a few related links to help you get started on that:

所谓喜欢 2024-11-22 08:57:12

来自 java.io.File 的文档

默认情况下,java.io 中的类
包总是解析相对的
针对当前用户的路径名
目录。

您仅从对话框中检索文件名(相对路径),而不是完整路径(绝对路径)。当您在第 4 行创建文件对象时,它期望该文件存在于当前目录中。

请改用以下内容:

String selectedFile=fc.getFile();
String selectedDirectory=getDirectory();
File file = new File(selectedDirectory, selectedFile);

From the doc's for java.io.File:

By default the classes in the java.io
package always resolve relative
pathnames against the current user
directory.

You are only retrieving the name of the file (a relative path) from the dialog - not the full path (absolute). When you create the file object on line 4 it expects the file to exist in the current directory.

Use the following instead:

String selectedFile=fc.getFile();
String selectedDirectory=getDirectory();
File file = new File(selectedDirectory, selectedFile);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文