Java ClassLoader getSystemResourceAsStream()方法与示例

ClassLoader类getSystemResourceAsStream()方法

  • getSystemResourceAsStream()方法在java.lang包中可用。

  • getSystemResourceAsStream()方法用于获取资源作为参数并将资源转换为InputStream,换句话说,可以说此方法用于表示InputStream来扫描给定资源。

  • getSystemResourceAsStream()方法是一个静态方法,可以使用类名进行访问,如果尝试使用类对象访问该方法,则不会出现任何错误。

  • 从资源到InputStream对象的转换时,getSystemResourceAsStream()方法不会引发异常。

语法:

    public static InputStream getResourceAsStream(String resource_name);

参数:

  • 字符串resource_name –表示资源的名称。

返回值:

此方法的返回类型为InputStream,它根据给定的情况返回以下值:

  • 当存在与给定名称关联的任何系统资源时,它将返回InputStream。

  • 当不存在与给定名称关联的系统资源时,它返回null。

示例

//Java程序演示示例 
//InputStream getSystemResourceAsStream(String resource_name) 
//ClassLoader的方法 

import java.io.*;

public class GetSystemResourceAsStreamOfClassLoader {
    static String resource(String res) {
        String count = "";
        try {
            Class cl = Class.forName("GetSystemResourceAsStreamOfClassLoader");
            ClassLoader loader = cl.getClassLoader();

            //通过使用getSystemResourceAsStream()方法是取 
            //资源并将其转换为InputStream-
            InputStream is = loader.getSystemResourceAsStream(res);
            InputStreamReader isr = new InputStreamReader(is);
            BufferedReader br = new BufferedReader(isr);

            String line;
            while ((line = br.readLine()) != null) {
                count = count + line;
            }
            is.close();
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        return count;
    }

    public static void main(String[] args) {
        System.out.println(resource("getProperties().doc"));
    }
}

输出结果

File Writing Done!!