我试图简单地使用Java将快速字符串写入文本文件。但是,在执行此操作时,我的代码由于某种原因不会抛出任何错误或异常,但单击按钮后文本文件为空。这是我的代码
btnOk.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String text = textEntered.getText();
try{
PrintWriter out = new PrintWriter("~\\Users\\username\\Desktop\\File1.rft");
out.println(text);
out.close();
}catch(FileNotFoundException io){
System.out.println(io.getLocalizedMessage());
}
}
});
一些额外的信息,我的文件路径中的用户名是我的用户名我刚刚将它换成了这篇文章。
任何帮助都会很棒,非常感谢。
答案 0 :(得分:1)
您的代码可以正常进行一些小的测试更改,如果您提供完整的文件路径:
public static void main(String[] args){
Scanner in = new Scanner(System.in);
String text = in.nextLine();
try{
PrintWriter out = new PrintWriter("/Users/user/NetBeansProjects/TestForSO/src/testforso/file.txt");
out.println(text);
out.close();
}catch(FileNotFoundException io){
System.out.println(io.getLocalizedMessage());
}
}
答案 1 :(得分:0)
只有shell才能理解~
。 Java没有,内核也没有。使用System.getProperty("user.home")
的结果。
事实上,你的道路根本没有任何意义。它应该是System.getProperty("user.home")+"/Desktop/File1.rft"
。
请注意,您不需要在Java文件名中使用反斜杠。