![java package tutorial](/java/lang/images/java.jpg)
- Java.lang Package classes
- Java.lang - Home
- Java.lang - Boolean
- Java.lang - Byte
- Java.lang - Character
- Java.lang - Character.Subset
- Java.lang - Character.UnicodeBlock
- Java.lang - Class
- Java.lang - ClassLoader
- Java.lang - Compiler
- Java.lang - Double
- Java.lang - Enum
- Java.lang - Float
- Java.lang - InheritableThreadLocal
- Java.lang - Integer
- Java.lang - Long
- Java.lang - Math
- Java.lang - Number
- Java.lang - Object
- Java.lang - Package
- Java.lang - Process
- Java.lang - ProcessBuilder
- Java.lang - Runtime
- Java.lang - RuntimePermission
- Java.lang - SecurityManager
- Java.lang - Short
- Java.lang - StackTraceElement
- Java.lang - StrictMath
- Java.lang - String
- Java.lang - StringBuffer
- Java.lang - StringBuilder
- Java.lang - System
- Java.lang - Thread
- Java.lang - ThreadGroup
- Java.lang - ThreadLocal
- Java.lang - Throwable
- Java.lang - Void
- Java.lang Package extras
- Java.lang - Interfaces
- Java.lang - Errors
- Java.lang - Exceptions
- Java.lang Package Useful Resources
- Java.lang - Useful Resources
- Java.lang - Discussion
Java ClassLoader getResourceAsStream() Method
Description
The Java 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
Getting Resource as Stream using ClassLoader Example
The following example shows the usage of java.lang.ClassLoader.getResourceAsStream() method. In this program, we've retrieved class of a ClassLoaderDemo. Then using getClassLoader(), we get the required ClassLoader. Now considering file.txt being in classpath of the java program, we've retrieved content of the file as stream using getResourceAsStream() and printed the content accordingly.
package com.tutorialspoint; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; class ClassLoaderDemo { static String getResource(String rsc) { String val = ""; try { Class cls = Class.forName("com.tutorialspoint.ClassLoaderDemo"); // returns the ClassLoader object associated with this Class ClassLoader cLoader = cls.getClassLoader(); // input stream InputStream inputStream = cLoader.getResourceAsStream(rsc); if(inputStream != null) { BufferedReader buffer = new BufferedReader(new InputStreamReader(inputStream)); // reads each line String l; while((l = buffer.readLine()) != null) { val = val + l; } buffer.close(); inputStream.close(); } } catch(Exception e) { System.out.println(e); } return val; } public static void main(String[] args) { System.out.println("File: " + getResource("file.txt")); } }
Output
Assuming we have a text file file.txt, which has the following content −
This is TutorialsPoint!
Let us compile and run the above program, this will produce the following result −
File: This is TutorialsPoint!
Checking Resource as Stream using ClassLoader Example
The following example shows the usage of java.lang.ClassLoader.getResourceAsStream() method. In this program, we've retrieved class of a ClassLoaderDemo. Then using getClassLoader(), we get the required ClassLoader. Now considering test.txt not being in the class path, we got stream as null using getResourceAsStream() and printed the message accordingly.
package com.tutorialspoint; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; class ClassLoaderDemo { static String getResource(String rsc) { String val = ""; try { Class cls = Class.forName("com.tutorialspoint.ClassLoaderDemo"); // returns the ClassLoader object associated with this Class ClassLoader cLoader = cls.getClassLoader(); // input stream InputStream inputStream = cLoader.getResourceAsStream(rsc); if(inputStream != null) { BufferedReader buffer = new BufferedReader(new InputStreamReader(inputStream)); // reads each line String l; while((l = buffer.readLine()) != null) { val = val + l; } buffer.close(); inputStream.close(); } else{ System.out.println("File not found!"); } } catch(Exception e) { System.out.println(e); } return val; } public static void main(String[] args) { System.out.println("File: " + getResource("test.txt")); } }
Output
Assuming we have another text file test.txt, but not in classpath which has the following content −
This is Java Tutorial
Let us compile and run the above program, this will produce the following result −
File not found! File: