0

DOS コマンド「copy *.txt NEW.txt」を使用して、Java プログラム内から新しい txt ファイルを形成するために、1 つのディレクトリ内の複数の txt ファイルを連結したいと考えています。

DOS を自分のディレクトリに移動してコマンドを実行するにはどうすればよいですか? 私は途方に暮れています。

前もって感謝します!

4

3 に答える 3

1

DOS コマンドを呼び出すのは得策ではありません。アプリケーションは環境に大きく依存するようになり、IO エラーを適切に検出して回復することが非常に難しくなります。Apache Commons IOのIOUtilsを使用することをお勧めします。そのメソッドの 1 つを繰り返し呼び出すことで、必要なものを簡単に実現できます。copy

単一のストリームに連結された複数のファイルを読み取る必要がある場合は、 SequenceInputStreamを使用することもできます。

于 2012-08-25T08:41:20.130 に答える
1

あなたが使用することができます:

Runtime.getRuntime().exec("cmd /c copy *.txt NEW.txt", 
    null, new File("<yourDirectory>"));

私はそれをすることを提案しないと思っていました。まず、正しくするのは難しいです。次に、プラットフォーム固有です (Windows でのみ動作します)。代わりに、java.io.FileInputStream/を使用しますjava.io.FileOutputStream

于 2012-08-24T19:10:32.007 に答える
0

を作成し、Process実行する前にその作業ディレクトリを設定します。

于 2012-08-25T04:30:58.893 に答える