Java Process getInputStream() Method



Description

The Java Process getInputStream() method gets the input stream of the subprocess. The stream obtains data piped from the standard output stream of the process represented by this Process object.

Declaration

Following is the declaration for java.lang.Process.getInputStream() method

public abstract InputStream getInputStream()

Parameters

NA

Return Value

This method returns he input stream connected to the normal output of the subprocess.

Exception

NA

Checking input stream of Notepad Process Example

The following example shows the usage of Process getInputStream() method. We've created a Process object for notepad executable. Then then using getInputStream() method, input stream of notepad process is retrieved. Using input stream available() method, we're reading data if available. Then using Thread.sleep() method, program is halted for 10 seconds and finally process is killed using destroy() method.

package com.tutorialspoint;

import java.io.InputStream;

public class ProcessDemo {

   public static void main(String[] args) {
      try {
         // create a new process
         System.out.println("Creating Process...");
         String[] cmds = {"notepad.exe"};
         Process p = Runtime.getRuntime().exec(cmds);

         // get the input stream of the process and print it
         InputStream in = p.getInputStream();
         for (int i = 0; i < in.available(); i++) {
            System.out.println("" + in.read());
         }

         // wait for 10 seconds and then destroy the process
         Thread.sleep(10000);
         p.destroy();
      } catch (Exception ex) {
         ex.printStackTrace();
      }
   }
}

Output

Let us compile and run the above program, this will produce the following result −

Creating Process...

Checking input stream of Calculator Process Example

The following example shows the usage of Process getInputStream() method. We've created a Process object for calculator executable. Then then using getInputStream() method, input stream of calculator process is retrieved. Using input stream available() method, we're reading data if available. Then using Thread.sleep() method, program is halted for 10 seconds and finally process is killed using destroy() method.

package com.tutorialspoint;

import java.io.InputStream;

public class ProcessDemo {

   public static void main(String[] args) {
      try {
         // create a new process
         System.out.println("Creating Process...");
         String[] cmds = {"calc.exe"};
         Process p = Runtime.getRuntime().exec(cmds);

         // get the input stream of the process and print it
         InputStream in = p.getInputStream();
         for (int i = 0; i < in.available(); i++) {
            System.out.println("" + in.read());
         }

         // wait for 10 seconds and then destroy the process
         Thread.sleep(10000);
         p.destroy();
      } catch (Exception ex) {
         ex.printStackTrace();
      }
   }
}

Output

Let us compile and run the above program, this will produce the following result −

Creating Process...

Checking input stream of Windows Explorer Process Example

The following example shows the usage of Process getInputStream() method. We've created a Process object for windows explorer executable. Then then using getInputStream() method, input stream of windows explorer process is retrieved. Using input stream available() method, we're reading data if available. Then using Thread.sleep() method, program is halted for 10 seconds and finally process is killed using destroy() method.

package com.tutorialspoint;

import java.io.InputStream;

public class ProcessDemo {

   public static void main(String[] args) {
      try {
         // create a new process
         System.out.println("Creating Process...");
         String[] cmds = {"explorer.exe"};
         Process p = Runtime.getRuntime().exec(cmds);

         // get the input stream of the process and print it
         InputStream in = p.getInputStream();
         for (int i = 0; i < in.available(); i++) {
            System.out.println("" + in.read());
         }

         // wait for 10 seconds and then destroy the process
         Thread.sleep(10000);
         p.destroy();
      } catch (Exception ex) {
         ex.printStackTrace();
      }
   }
}

Output

Let us compile and run the above program, this will produce the following result −

Creating Process...
java_lang_process.htm
Advertisements