ClassLoader.getResourceAsStream() Method

Advertisements


Description

The java.lang.ClassLoader.getResourceAsStream() method returns an input stream for reading the specified resource.

Declaration

Following is the declaration for java.lang.ClassLoader.getResourceAsStream() method

public InputStream getResourceAsStream(String name)

Parameters

  • name -- This is the resource name.

Return Value

This method returns an input stream for reading the resource, or null if the resource could not be found.

Exception

  • NA

Example

The following example shows the usage of java.lang.ClassLoader.getResourceAsStream() method.

package com.tutorialspoint;

import java.lang.*;
import java.io.*;

class ClassLoaderDemo {

   static String getResource(String rsc) {
      String val = "";

      try {
         Class cls = Class.forName("ClassLoaderDemo");

         // returns the ClassLoader object associated with this Class
         ClassLoader cLoader = cls.getClassLoader();
         // input stream
         InputStream i = cLoader.getResourceAsStream(rsc);
         BufferedReader r = new BufferedReader(new InputStreamReader(i));

         // reads each line
         String l;
         while((l = r.readLine()) != null) {
            val = val + l;
         } 
         i.close();
      } 
      catch(Exception e) {
         System.out.println(e);
      }
      return val;
   }
    
   public static void main(String[] args) {
                                      
     System.out.println("File1: " + getResource("file.txt"));
     System.out.println("File2: " + getResource("test.txt"));                
   }
}  

Assuming we have a text file file.txt, which has the following content:

This is TutorialsPoint!

Assuming we have another text file test.txt, which has the following content:

This is Java Tutorial

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

File1: This is TutorialsPoint!
File2: This is Java Tutorial



Advertisements
Advertisements