2016-10-27 7 views
0

今日、私は通常のパスの代わりに "ファイル"をテストしました。 illegal Arguments: contains a path seperator:エラーコードでOutputStreamWriterにパスセパレータが含まれています

File path=new File(getFilesDir(),"uf"); 
File test = new File(path.getAbsolutePath(),"test.txt"); 


if(!path.exists()){ 
    path.mkdir(); 
} 

if(!test.isFile()){ 
    try { 
     test.createNewFile(); 
    } catch (IOException e) { 
     //TODO in errorlog -> filecreation 
     e.printStackTrace(); 
    } 
}else{ 
    try { 
     OutputStreamWriter mywriter = new OutputStreamWriter(openFileOutput(test.getAbsolutePath().toString(),Context.M                ODE_PRIVATE)); 
     mywriter.close(); 
    } catch (FileNotFoundException e) { 
     e.printStackTrace(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 

} 

は毎回来る:
はここに私のコードです!

ありがとうございました

+0

常に完全な例外を指定してください。 – Hrabosch

答えて

0

エラーの詳細情報を追加することがあります。しかし...

このエラーは、プライベートデータエリアにアクセスするための完全なパス(サブディレクトリを含む)を試みていることです。 解決策はFileOutputStream、さらにhereです。ファイルを作成するには

new File(YOUR_FILE) 

を使用してください。

メソッドmkDirs()を呼び出して、必要なすべてのディレクトリとサブディレクトリを作成する必要があります。 here

注:メソッドmkDir()hereはdocです。これは1つのディレクトリを作成します。

関連する問題