devxlogo

Loading from the Classpath

If your application includes .properties files or images and you want to load them without hard-coding their location, store the files in the class path. Classes are stored in archive files (.jar or .zip) or directories. Loading them is easy. Here’s how:

 import java.awt.Toolkit;import java.awt.Image;import java.io.InputStream;import java.io.IOException;import java.net.URL;import java.util.Properties;public class ResourceLoader {static public Properties loadProperties(String name) {ClassLoader loader = ClassLoader.getSystemClassLoader();if(loader != null) {URL url = loader.getResource(name);if(url == null) {url = loader.getResource("/"+name);}if(url != null) {try {InputStream in = url.openStream();Properties props = new Properties();props.load(in);return props;} catch(IOException ioe) {}}}return null;}static public Image loadImage(String name) {ClassLoader loader = ClassLoader.getSystemClassLoader();if(loader != null) {URL url = loader.getResource(name);if(url == null) {url = loader.getResource("/"+name);}if(url != null) {Toolkit tk = Toolkit.getDefaultToolkit();Image img = tk.getImage(url);return img;}}return null;}}

Charlie has over a decade of experience in website administration and technology management. As the site admin, he oversees all technical aspects of running a high-traffic online platform, ensuring optimal performance, security, and user experience.

See also  Seven Service Boundary Mistakes That Create Technical Debt

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.