1

私は、ディレクトリを作成するために Windows コマンドを呼び出している Java プロジェクトの真っ最中です。私のコードは現在次のようになっています。

    Runtime rt = Runtime.getRuntime();
    String command;
    command = "cmd.exe /c start mkdir \"C:\\Users\\User1\\Documents\\Folder1\\"+folderName+"\" &&exit";
    rt.exec(command);

これは正常に機能しますが (フォルダーが作成されます)、cmd の追加インスタンスが生成されます。(最初は「&&exit」を追加すると余分なウィンドウがなくなると思っていましたが、不要なコードであることがわかりました。)

1) cmd のこの追加のインスタンス (新しいディレクトリで始まる) を防ぐことはできますか、または

2) 他の問題を引き起こすことなく、この余分なコマンド ウィンドウを閉じることはできますか? (cmd を強制終了すると、マシン上の他のものが壊れる可能性があると聞いたことがあります。)

4

2 に答える 2

1

でディレクトリを作成してみませんFileか?

new File("C:\\my\\path\\myDir").mkdir();
于 2013-08-01T23:59:32.500 に答える
1

以下を使用する必要があります。

    File file = new File("C:\\Users\\User1\\Documents\\Folder1\\"+folderName+"\"");

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

代わりは。ただし、新しいコマンドを作成せずにコマンドを cmd に呼び出したい場合は、「cmd.exe /c start」を呼び出さないでください。Javaの外部から同じコマンドを実行すると、新しいコマンドも開始されることを確認できます。これを試して:

Runtime rt = Runtime.getRuntime();
String command;
command = "mkdir \"C:\\Users\\User1\\Documents\\Folder1\\"+folderName+"\" &&exit";
rt.exec(command);
于 2013-08-02T00:01:15.200 に答える