【发布时间】:2019-03-17 22:12:20
【问题描述】:
创建PrinterWriter对象时:
PrintWriter outputFile = new PrintWriter(*FileName*);
编译器去哪里寻找FileName?例如,在 Eclipse 中,我在 Arrays/src/ArraysAndFiles.java 中工作。在这个例子中,我试图打开 Values.txt。我在 src 目录中创建了这个文件,因为这是存储 ArraysAndFiles.java 的地方。当我尝试在以下代码中打开文件时,我得到一个FileNotFoundException:
import java.io.PrintWriter;
public class ArraysAndFiles {
public static void main(String[] args) {
// TODO Auto-generated method stub
PrintWriter outputFile = new PrintWriter("Values.txt");
}
}
Values.txt的正确路径是什么?
【问题讨论】:
-
当您将路径传递给
PrintWritier时,它正在查看操作系统的文件系统,您可以右键单击文件以查看其完整路径并将其传递给PrintWriter。 但是,当您 JAR 代码时,您将无法完全写入该运行 JAR 中的文件。这是XY problem,您的实际目标是什么,以便有人可以帮助您实现它? -
另一种打开文件的方法是使用
JFileChooser并让用户为您挑选文件。 docs.oracle.com/javase/10/docs/api/javax/swing/… -
将文件放入项目目录
/Arrays. -
@xtratic 我正在阅读 Starting Out with Java 并且只是试图跟随“使用数组和文件”示例。
-
我不确定该示例的含义,您的目标是什么? 如果你不关心你的代码在 Jarred 时是否正常工作,而这只是一个实验, 那么只需根据 OS 文件系统将路径更正为完整路径,例如。
C:\...\...\...\Arrays\src\Values.txt.
标签: java file printwriter