Java ClassLoader getSystemResourceAsStream()方法

java.lang.ClassLoader.getSystemResourceAsStream() 方法打开读取,从加载类的搜索路径指定名称的资源。

1 语法

public static InputStream getSystemResourceAsStream(String name)

2 参数

name:这是资源的名称。

3 返回值

此方法用于读取资源返回的输入流,或如果资源不能被发现返回null。

4 示例 

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
/**
 * Java ClassLoader getSystemResourceAsStream()方法
 */
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.getSystemResourceAsStream(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 Yiidian!

假设我们有另一个文本文件test.txt,它具有以下内容:

This is Java Tutorial

让我们来编译和运行上面的程序,这将产生以下结果:

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

 

热门文章

优秀文章