项目有时为了方便配置数据字典,会创建类似于“test=测试” 的key-value形式的数据字典,在项目启动时便缓存该字典数据,方便后续使用;但是该字典有时候又存在中文,在加载之后会出现乱码问题,便需要对加载的数据进行特殊处理。
public class ConfigUtils { /** * 加载数据字典配置文件 * @param propertyFileName 数据字典文件名称 * @param propertiesMap 全局map,方便后续使用 */ public static void loadAllProperties(String propertyFileName, Map<String, String> propertiesMap) { try { Properties props = PropertiesLoaderUtils.loadAllProperties(propertyFileName); for (Object key : props.keySet()) { String keyStr = key.toString(); try { // PropertiesLoaderUtils的默认编码是ISO-8859-1,在这里转码一下 propertiesMap.put(keyStr, new String(props.getProperty(keyStr).getBytes(StandardCharsets.ISO_8859_1), StandardCharsets.UTF_8)); } catch (Exception e) { e.printStackTrace(); } } } catch (IOException e) { e.printStackTrace(); } } }
标签:propertyFileName,String,配置文件,propertiesMap,字典,数据,读取 From: https://www.cnblogs.com/128-cdy/p/16517756.html