15 Mart 2020 Pazar

Resources Sınıfı

Giriş
Şu satırı dahil ederiz
import com.google.common.base.Charsets;
import com.google.common.io.Resources;
asCharSource metodu - Get Resource as BufferedReader
Örnek
Şöyle yaparız
public static BufferedReader asBufferedReader(String resource) {
  URL url = Resources.getResource(resource);
  try {
    CharSource charSource = Resources.asCharSource(url, Charsets.UTF_8);
    return charSource.openBufferedStream();
  } catch (IOException ex) {
    throw new RuntimeException(ex);
  }
}
getResource metodu
ClassLoader sınıfını kullanarak kaynağın adresini döner. ClassLoader kullandığı için yolun forward slash ile başlamaması ve mutlak yol olması gerekir.

Örnek
Şöyle yaparız.
URL url = Resources.getResource("foo.txt");
String text = Resources.toString(url, Charsets.UTF_8);
Örnek
Elimizde şöyle bir dosya olsun.
src
 main
  java
   com
    mypackage
     MyClass.java
  resources
    queries
      query.sql
Şöyle yaparız.
URL url = Resources.getResource("queries/query.sql");
String query = Resources.toString(url, Charset.UTF-8);
toString metodu - Get Resource As String
Örnek
Elimizde şöyle bir kod olsun.
public String readResource(final String fileName, Charset charset) throws IOException {
  return Resources.toString(Resources.getResource(fileName), charset);
}
Şöyle yaparız.
String fixture = this.readResource("filename.txt", Charsets.UTF_8)

Hiç yorum yok:

Yorum Gönder