2016-12-21 52 views
0

如果我运行这段代码什么也没有发生,甚至没有发现异常。字符串不会发生在test.txt文件中。 test.txt文件的路径是〜/ home/joci/Joci。我东错了什么?Linux上的FileWrite路径

public static void main(String[] args) { 

try{    
String text = "this is just a test "; 

FileWriter fw = new FileWriter("/home/joci/Joci test.txt"); 
fw.write(text); 
fw.close(); 

}catch(IOException e){ 
System.out.println("Something went wrong "); 

} 
+1

你忘了缩进你的代码。这不是你问题的根源,但是你做错了。 – khelwood

+0

路径中的空间或检查错误的位置:'〜/ home/joci/Joci'你确定吗?你家里放了个家庭文件夹吗? –

+0

这是文件名吗? Joci test.txt – XtremeBaumer

回答

1

起初,我的问题是,

"/home/joci/Joci test.txt" 

表示Linux下一个有效的文件名;所以你简单地放下这个空间;或者用_或 - 替换它,例如。或者使用\\来逃避那个空间。

但我只是想:

import java.io.*; 

public class Test { 
    public static void main(String[] args) { 
    try{    
    String text = "this is just a test "; 
    FileWriter fw = new FileWriter("/home/myhome/tmp/out 21.txt"); 
    fw.write(text); 
    fw.close(); 
    }catch(IOException e){ 
    System.out.println("Something went wrong "); 
    } 
} 

}

而这只是工作罚款。所以在你的设置中一定有其他的东西会导致这个问题!

此外:~字符是您的Linux的shell的功能。 JVM不知道这个字符的意思是“家”;因此你应该简单地使用而不是在你的java源代码中使用它!

+0

非常感谢你 – PJoe

+0

但它不起作用我尝试所有_ - \ 如果我写这些catch不执行,我没有看到文件中的字符串 – PJoe

+0

它的工作原理谢谢:) – PJoe