[ジャワ] Javaをコマンドラインを実行します – Javaでコマンドラインを実行します

あなたは、Javaのような端末からのコマンドを実行したいことはありません? この資料では、簡単な方法でそれを行うのに役立ちます. 私はUbuntuの上で行うことに注意してください, WindowsまたはLinuxのいくつかの他のディストリビューションのようにすると少し異なる場合があります.

あなたがインストールしたと仮定すると、 VLC 今、あなたがビデオを開きたいです chim_trang_mo_coi.mp4 アット /ホーム/ nguyenvanquan7826 /デスクトップ/ chim_trang_mo_coi.mp4 VLCによって. このランのようなプログラムを書きます, VLCのビデオはすぐにあなたのためにそれを開きます。.

package executecommandline;

import java.io.IOException;

class ExecuteCommandLine {
	private native void print();

	public static void main(String[] args) {
		String command = "vlc /home/nguyenvanquan7826/Desktop/chim_trang_mo_coi.mp4";
		try {
			Process p = Runtime.getRuntime().exec(command);
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

あなたが見たように、チェーン コマンド コマンドを使用すると、端末に入力したかのように実行されます.
もう少し追加, あなたがCプログラムを持っている場合にコンパイルされています. 今、あなたはそれを実行したいです? そのプログラムは、印刷したい文字列と文字列を出力すると仮定すると、あなたが取る必要があります InputStream そのプログラムのC

#include <stdio.h>

int main (int argc, char *argv[])
{
	printf("The program is completed in C and called by javan");
	return 0;
}
package executecommandline;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

class ExecuteCommandLine {
	private native void print();

	public static void main(String[] args) {
		String command = "/home/nguyenvanquan7826/Desktop/temp";
		try {
			Process p = Runtime.getRuntime().exec(command);
			String line = "";
			BufferedReader bri = new BufferedReader(new InputStreamReader(p.getInputStream()));
			BufferedReader bre = new BufferedReader(new InputStreamReader(p.getErrorStream()));
			while ((line = bri.readLine()) != null) {
				System.out.println(line);
			}
			bri.close();
			while ((line = bre.readLine()) != null) {
				System.out.println(line);
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

Javaでコマンドラインを実行します

記事の中で参照: stackoverflow.com