This is what I’m trying to do:
public String load(String path) {
//...
}
load("file:/tmp/foo.txt"); // loads by absolute file name
load("classpath:bar.txt"); // loads from classpath
I think it’s possible to do with JDK, but can’t find out how exactly.
I can think of two approaches:
Just write plain Java code to extract the “scheme” from those URI-like strings, and then dispatch to the different code to load the file in different ways.
Register a custom URL stream handler to deal with the “classpath” case and then use
URL.openStream()to open the stream to read the object.The package documentation for java.net has some information about how stream handlers are discovered.