実行するコマンドがいくつかあり、同じコマンドからの出力を期待する 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();
}
}
}