Here you can find the source of loadProperties(File file)
@CheckForNull public static Properties loadProperties(File file) throws IOException
//package com.java2s; /*//from w ww . ja v a 2 s .c o m * #%L * %% * Copyright (C) 2011 - 2013 BMW Car IT GmbH * %% * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * #L% */ import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.Properties; import javax.annotation.CheckForNull; public class Main { @CheckForNull public static Properties loadProperties(File file) throws IOException { if (file != null) { if (!file.isDirectory()) { InputStream inputStream = new FileInputStream(file); return loadProperties(inputStream); } else { return loadPropertyDirectory(file); } } return null; } public static Properties loadProperties(InputStream configInputStream) throws IOException { return loadProperties(configInputStream, null); } public static Properties loadProperties(InputStream configInputStream, @CheckForNull Properties properties) throws IOException { if (configInputStream != null) { if (properties == null) { properties = new Properties(); } properties.load(configInputStream); configInputStream.close(); return properties; } return properties; } private static Properties loadPropertyDirectory(File dir) throws IOException { Properties returnValue = new Properties(); File[] files = dir.listFiles(); if (files != null) { for (File file : files) { if (file.getName().endsWith("properties")) { InputStream inputStream = new FileInputStream(file); loadProperties(inputStream, returnValue); } } } return returnValue; } }