การใช้คลาสรันไทม์
Java จัดเตรียมคลาสชื่อ java.lang.Runtime โดยใช้คลาสนี้ คุณสามารถเชื่อมต่อกับสภาพแวดล้อมปัจจุบันได้
getRunTime() (คงที่) เมธอดของคลาสนี้ส่งคืนอ็อบเจ็กต์รันไทม์ที่เชื่อมโยงกับแอปพลิเคชันปัจจุบัน
เมธอด exec() ยอมรับค่าสตริงที่แสดงคำสั่งเพื่อดำเนินการกระบวนการในสภาพแวดล้อมปัจจุบัน (ระบบ) และดำเนินการ
ดังนั้น เพื่อรันแอปพลิเคชันภายนอกโดยใช้คลาสรันไทม์ -
-
รับวัตถุรันไทม์โดยใช้ getRuntime() วิธีการ
-
ดำเนินการตามกระบวนการที่จำเป็นโดยส่งพา ธ ของมันเป็นค่าสตริงไปยัง exec() วิธีการ
ตัวอย่าง
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); } }
ผลลัพธ์
System.out.println("Executing the external program . . . . . . . .
การใช้คลาส ProcessBuilder
ในทำนองเดียวกัน ตัวสร้างของ ProcessBuilder class ยอมรับตัวแปรอาร์กิวเมนต์ประเภท string แทนคำสั่งเพื่อดำเนินการกระบวนการและอาร์กิวเมนต์เป็นพารามิเตอร์และสร้างวัตถุ
เริ่มต้น() เมธอดของคลาสนี้เริ่มต้น/ดำเนินการกระบวนการใน ProcessBuilder ปัจจุบัน ดังนั้น เพื่อเรียกใช้โปรแกรมภายนอกโดยใช้ คลาส ProcessBuilder −
-
สร้างอินสแตนซ์คลาส ProcessBuilder โดยส่งคำสั่งเพื่อดำเนินการโปรเซสและอาร์กิวเมนต์สำหรับคลาสเป็นพารามิเตอร์ไปยังคอนสตรัคเตอร์
-
ดำเนินการตามกระบวนการโดยเรียกใช้ start() เมธอดบนวัตถุที่สร้างขึ้นด้านบน
ตัวอย่าง
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(); } }
ผลลัพธ์
Executing the external program . . . . . . . .