Properties detailProps = loadProperties("com/test.properties");
protected Properties loadProperties(String resource) throws IOException {
Properties props = new Properties();
InputStream is = null;
try {
is = ResourceHelper.getClassPathResourceAsInputStream(resource);
if (is != null) {
propertiesPersister.load(props, new InputStreamReader(is, "UTF-8"));
}
} finally {
IOUtils.closeQuietly(is);
}
return props;
}
package com.tools;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.Resource;
import org.springframework.util.ResourceUtils;
/**
* 资源操作工具类
*
* @author ourenyang
*
*/
public class ResourceHelper {
/**
* 在指定类所在包下查找指定的资源文件,并转换成InputStream
*
* @param file
* @param clazz
* @return
* @throws IOException
*/
public static InputStream getResourceInPackage(String file, Class<?> clazz) throws IOException {
StringBuilder path = new StringBuilder(clazz.getPackage().getName().replace('.', '/'));
if (file.charAt(0) != '/') {
path.append('/');
}
path.append(file);
Resource res = new ClassPathResource(path.toString());
return res.getInputStream();
}
/**
* 在指定类所在包下查找指定的资源文件,并转换成InputStream
*
* @param file
* @param clazz
* @return
* @throws IOException
*/
public static Reader getResourceInPackageAsReader(String file, Class<?> clazz) throws IOException {
StringBuilder path = new StringBuilder(clazz.getPackage().getName().replace('.', '/'));
if (file.charAt(0) != '/') {
path.append('/');
}
path.append(file);
Resource res = new ClassPathResource(path.toString());
return new InputStreamReader(res.getInputStream());
}
/**
* 从Class路径中获取指定资源文件,并转换成InputStream
*
* @param path
* @return
* @throws IOException
*/
public static InputStream getClassPathResourceAsInputStream(String path) throws IOException {
Resource res = new ClassPathResource(path);
return res.getInputStream();
}
/**
* 获取指定资源文件,并转换成InputStream,资源文件名规则见Spring
*
* @param path
* @return
* @throws IOException
*/
public static InputStream getResourceAsInputStream(String path) throws IOException {
File file = ResourceUtils.getFile(path);
return new FileInputStream(file);
}
/**
* 从Class路径中获取指定资源文件,并转换成Reader
*
* @param path
* @return
* @throws IOException
*/
public static Reader getClassPathResourceAsReader(String path) throws IOException {
Resource res = new ClassPathResource(path);
InputStream is = res.getInputStream();
return new InputStreamReader(is);
}
/**
* 获取指定资源文件,并转换成Reader,资源文件名规则见Spring
*
* @param path
* @return
* @throws IOException
*/
public static Reader getResourceAsReader(String path) throws IOException {
File file = ResourceUtils.getFile(path);
return new FileReader(file);
}
}