以下代码中是否有错误,它似乎没有创建我想要的文本文件(numbers.txt)?我知道它是在JRE系统库中创建文件,但我无法找到它。
package test;
import java.io.FileNotFoundException;
import java.util.Formatter;
public class FileReaderTest {
private Formatter output;
/**
* default const
*/
public FileReaderTest() {
}
/**
* Method that enables a user to open a file
*/
public void openFile() {
try {
output = new Formatter("numbers.txt");
} catch (FileNotFoundException e) {
System.err.println("Problem found when opening file");
System.exit(1);// terminate
} catch (SecurityException Se) {
System.err.println("You dont have access to open file");
System.exit(1);// terminate
}
}// end of openFile
/**
* Method enabling user to write numbers to file
*/
public void writeToFile() {
// numbers to be written to file
Integer[] numbers = { 2, 5, 6, 7, 8, 9 };
for (Integer i : numbers) {
output.format("%d/n", i);
}
}// end of writeToFile
/**
* Method that closes file
*
*/
public void closeFile() {
if (output != null) {
output.close();
}
}// end of close file
}// class end
我在Main中的fileReaderTest的实现:
public static void main(String[] args) {
//file input/putput testing
System.out.println("Opening file");
FileReaderTest file1= new FileReaderTest();
file1.openFile();//opening the file
file1.writeToFile();//writing values within the file
file1.closeFile();//closing the file
System.out.println("Finished with file");
}
}
答案 0 :(得分:0)
我认为你应该使用File.getAbsolutePath() 在UNIX系统上,通过将相对路径名解析为当前用户目录,使其成为绝对路径名。在Microsoft Windows系统上,通过将路径名解析为路径名所指定的驱动器的当前目录(如果有),使相对路径名成为绝对路径名;如果没有,则根据当前用户目录解析。
答案 1 :(得分:0)
您当前的执行目录是:new File(".").getAbsolutePath()
,请检查