- Java.lang 包类
- Java.lang - 首页
- 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 包其他内容
- Java.lang - 接口
- Java.lang - 错误
- Java.lang - 异常
- Java.lang 包实用资源
- Java.lang - 实用资源
- Java.lang - 讨论
Java 类 getResourceAsStream() 方法
描述
Java 类 getResourceAsStream() 方法用于查找具有给定名称的资源。如果找到具有此名称的资源,则返回一个 InputStream 对象;否则返回 null。
声明
以下是 java.lang.Class.getResourceAsStream() 方法的声明
public InputStream getResourceAsStream(String name)
参数
name - 这是所需资源的名称。
返回值
此方法返回一个 InputStream 对象;如果找不到具有此名称的资源,则返回 null。
异常
NullPointerException - 如果 name 为 null。
获取资源流示例
以下示例演示了 java.lang.Class.getResourceAsStream() 方法的使用。在此程序中,我们创建了一个 ClassDemo 的实例,然后使用 getClass() 方法获取该实例的类。使用 getResourceAsStream(),我们从文件名中检索了流,并打印了其内容。
package com.tutorialspoint;
import java.io.*;
public class ClassDemo {
static String getResource(String rsc) {
String val = "";
try {
// input stream
InputStream i = ClassDemo.class.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"));
}
}
输出
假设我们有一个文本文件 file.txt,其内容如下:
This is TutorialsPoint!
假设我们还有另一个文本文件 test.txt,其内容如下:
This is Java Tutorial
让我们编译并运行以上程序,这将产生以下结果:
File1: This is TutorialsPoint! File2: This is Java Tutorial
获取不存在的资源流示例
以下示例演示了 java.lang.Class.getResourceAsStream() 方法的使用。在此程序中,我们创建了一个 ClassDemo 的实例,然后使用 getClass() 方法获取该实例的类。使用 getResourceAsStream(),我们从文件名中检索了流,并打印了其内容。
package com.tutorialspoint;
import java.io.*;
public class ClassDemo {
static String getResource(String rsc) {
String val = "";
try {
// input stream
InputStream i = ClassDemo.class.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("file1.txt"));
System.out.println("File2: " + getResource("test1.txt"));
}
}
输出
让我们编译并运行以上程序,这将产生以下结果:
java.lang.NullPointerException File1: java.lang.NullPointerException File2:
java_lang_class.htm
广告