0

実行するコマンドがいくつかあり、同じコマンドからの出力を期待する C++ ベースのコマンド ライン ツールがあります。プロセスは次のようになります。 まず、次のようなツールフォルダーに移動する必要があります-

c:>cd C:\CHECKSOFT

次に、次のようなコマンドを実行する必要があります

C:\CHECKSOFT>bin\checktrans -f x2.in > x2.out

上記のコードはファイル x2.out を生成するので、出力を読み取る必要があります。

したがって、上記のすべてのプロセスをJavaで実行する方法.

ディレクトリを作成しようとしましたが、これらの基本的な DOS コマンドはすべて機能しましたが、上記のプロセスを機能させることができませんでした。

私が試したこと -

public class ExecuteDOSCommand {
   public static void main(String[] args) {
      final String dosCommand = "cmd /c bin/checktrans -f x2.in > x2.out";
      final String location = "C:\\CHECKSOFT";
      try {
         final Process process = Runtime.getRuntime().exec(
            dosCommand + " " + location);
         final InputStream in = process.getInputStream();
         System.out.println("IIII "+in.read());
         int ch;
         while((ch = in.read()) != -1) {
            System.out.print((char)ch);
         }
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}
4

0 に答える 0