2017-01-31 5 views
0

に隠さなっdoesntの理由:私のファイルは、私は私が作成したファイル「F」を持っている、と私はそれを隠し作りたいので、私は次のコードを使用するランタイムAttribに+ H(Java)の

Runtime.getRuntime().exec("attrib +H "+f.getCanonicalPath()); 

しかし、それはすべての場合に動作しません、 'Desktop'フォルダ、 'Documents'フォルダのような有名なフォルダでのみ動作するように見えますが、 'Desktop/randomFolder'のようなランダムなフォルダではファイルを隠しません。

誰かがなぜ、どのようにこれを解決できますか? アプリケーションはWindows用です。 悪い英語で申し訳ありません。

+0

それはいくつかのランダムなフォルダで動作しますが、いくつかのフォルダではまだ動作しません。例えば、 'Picture/randomFolder'; 'Desktop/randomFolder'ではありません。 –

+0

""(空白)があるフォルダではうまくいきませんが、どうすれば解決できますか? –

答えて

0

私は、次の手順を実行して、それを解決する方法を見つける:

String a[] = {"attrib","+H",f.getCanonicalPath()}; 
Runtime.getRuntime().exec(a); 

私は、文字列の配列に「」を私のコマンドのすべての部分を分離することでしょう。 次に、私は 'exec()'関数でそれを使用します。

再び悪い英語のために申し訳ありません。

+0

@MadProgrammerのおかげで次の質問に答えました:http://stackoverflow.com/questions/17141767/having-spaces-in-runtime-getruntime-exec-with-2-executables –

関連する問題