@Beta public final class Resources extends Object
URL
parameters, they are usually not appropriate for HTTP or other non-classpath resources.
All method parameters must be non-null unless documented otherwise.
Modifier and Type | Method and Description |
---|---|
static ByteSource |
asByteSource(URL
Returns a
ByteSource that reads from the given URL.
|
static CharSource |
asCharSource(URL
Returns a
CharSource that reads from the given URL using the given character set.
|
static void |
copy(URL
Copies all bytes from a URL to an output stream.
|
static URL |
getResource(Class
Given a
resourceName that is relative to
contextClass , returns a
URL pointing to the named resource.
|
static URL |
getResource(String
|
static List |
readLines(URL
Reads all of the lines from a URL.
|
static <T> T |
readLines(URL
Streams lines from a URL, stopping when our callback returns false, or we have read all of the lines.
|
static byte[] |
toByteArray(URL
Reads all bytes from a URL into a byte array.
|
static String |
toString(URL
Reads all characters from a URL into a
String , using the given character set.
|
public static ByteSourceasByteSource(URL url)
ByteSource
that reads from the given URL.
public static CharSourceasCharSource(URL url, Charset charset)
CharSource
that reads from the given URL using the given character set.
public static byte[] toByteArray(URLurl) throws IOException
url
- the URL to read from
IOException
- if an I/O error occurs
public static StringtoString(URL url, Charset charset) throws IOException
String
, using the given character set.
url
- the URL to read from
charset
- the charset used to decode the input stream; see
Charsets
for helpful predefined constants
IOException
- if an I/O error occurs.
public static <T> T readLines(URLurl, Charset charset, LineProcessor <T> callback) throws IOException
url
- the URL to read from
charset
- the charset used to decode the input stream; see
Charsets
for helpful predefined constants
callback
- the LineProcessor to use to handle the lines
IOException
- if an I/O error occurs
public static List<String > readLines(URL url, Charset charset) throws IOException
This method returns a mutable List
. For an ImmutableList
, use Resources.asCharSource(url, charset).readLines()
.
url
- the URL to read from
charset
- the charset used to decode the input stream; see
Charsets
for helpful predefined constants
List
containing all the lines
IOException
- if an I/O error occurs
public static void copy(URLfrom, OutputStream to) throws IOException
from
- the URL to read from
to
- the output stream
IOException
- if an I/O error occurs
public static URLgetResource(String resourceName)
URL
pointing to
resourceName
if the resource is found using the
context class loader. In simple environments, the context class loader will find resources from the class path. In environments where different threads can have different class loaders, for example app servers, the context class loader will typically have been set to an appropriate loader for the current thread.
In the unusual case where the context class loader is null, the class loader that loaded this class (Resources
) will be used instead.
IllegalArgumentException
- if the resource is not found
public static URLgetResource(Class <?> contextClass, String resourceName)
resourceName
that is relative to
contextClass
, returns a
URL
pointing to the named resource.
IllegalArgumentException
- if the resource is not found