Java-lang-classloader-getsystemresourceasstream
提供:Dev Guides
ClassLoader.getSystemResourceAsStream()メソッドの例
説明
- java.lang.ClassLoader.getSystemResourceAsStream()*メソッドは、クラスをロードするために使用される検索パスから指定された名前のリソースを読み取るために開きます。
宣言
以下は* java.lang.ClassLoader.getSystemResourceAsStream()*メソッドの宣言です。
public static InputStream getSystemResourceAsStream(String name)
パラメーター
*name* -これはリソース名です。
戻り値
このメソッドは、リソースを読み取るための入力ストリームを返します。リソースが見つからなかった場合はnullを返します。
例外
NA
例
次の例は、java.lang.ClassLoader.getSystemResourceAsStream()メソッドの使用法を示しています。
package com.finddevguides;
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 finddevguides!
次の内容を持つ別のテキストファイル test.txt があると仮定します-
This is Java Tutorial
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-
File1: This is finddevguides!
File2: This is Java Tutorial