2016-12-21 4 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のシェルの機能です。 JVMは、この文字が "home"を意味することを知らない。したがって、あなたは単にではありませんあなたのJavaソースコード内でそれを使用してください!

+0

大変ありがとうございます – PJoe

+0

しかし、私はこれらすべてを試してみました_ - \ キャッチは実行されず、ファイル内の文字列は表示されません – PJoe

+0

ありがとうございます:) – PJoe

関連する問題