Computer >> Máy Tính >  >> Lập trình >> Java

Làm thế nào để thực thi một chương trình bên ngoài như windows media player trong Java?

Sử dụng lớp Runtime

Java cung cấp một lớp có tên java.lang.Runtime, sử dụng lớp này, bạn có thể giao tiếp với môi trường hiện tại.

getRunTime () (static) của lớp này trả về một đối tượng Runtime được liên kết với ứng dụng hiện tại.

Phương thức execute () chấp nhận một giá trị Chuỗi đại diện cho lệnh để thực thi một quá trình trong môi trường hiện tại (hệ thống) và thực thi nó.

Do đó, để thực thi một ứng dụng bên ngoài bằng cách sử dụng lớp Runtime -

  • Lấy đối tượng thời gian chạy bằng cách sử dụng getRuntime () phương pháp.

  • Thực thi quy trình được yêu cầu bằng cách chuyển đường dẫn của quy trình đó dưới dạng giá trị Chuỗi đến execute () phương pháp.

Ví dụ

import java.io.IOException;
public class Trail {
   public static void main(String args[]) throws IOException {
      Runtime run = Runtime.getRuntime();
      System.out.println("Executing the external program . . . . . . . .");
      String file = "C:\\Program Files\\Windows Media Player\\wmplayer.exe";
      run.exec(file);
   }
}

Đầu ra

System.out.println("Executing the external program . . . . . . . .

Sử dụng lớp ProcessBuilder

Tương tự, hàm tạo của ProcessBuilder lớp chấp nhận một đối số biến kiểu chuỗi đại diện cho lệnh để thực thi một quá trình và các đối số của nó là tham số và xây dựng một đối tượng.

start () phương thức của lớp này bắt đầu / thực thi (các) tiến trình trong ProcessBuilder hiện tại. Do đó, để chạy một chương trình bên ngoài bằng cách sử dụng lớp ProcessBuilder -

  • Khởi tạo lớp ProcessBuilder bằng cách truyền lệnh để thực thi một quá trình và các đối số cho nó dưới dạng tham số cho phương thức khởi tạo của nó.

  • Thực thi quy trình bằng cách gọi start () trên đối tượng đã tạo ở trên.

Ví dụ

import java.io.IOException;
public class ExternalProcess {
   public static void main(String args[]) throws IOException {
      String command = "C:\\Program Files\\Windows Media Player\\wmplayer.exe";
      String arg = "D:\\sample.mp3";
      //Building a process
      ProcessBuilder builder = new ProcessBuilder(command, arg);
      System.out.println("Executing the external program . . . . . . . .");
      //Starting the process
      builder.start();
   }
}

Đầu ra

Executing the external program . . . . . . . .