一、 对于.properties文件的读取容易出现的中文读取乱码问题
原始代码 未加读取.properties文件的规则
public class CityCodeUtils { private static Properties properties = new Properties(); public static String DEFAULT_CODE = "101010100"; private CityCodeUtils() { } static { ClassLoader classLoader = CityCodeUtils.class.getClassLoader(); InputStream is = classLoader.getResourceAsStream("文件名.properties"); try { properties.load(is); } catch (IOException e) { throw new RuntimeException(e); } } public static String getCityCode(String cityName) { String code = properties.getProperty(cityName, "101010100"); return code; }}
debug运行截图:
加入.properties读取规则
public class CityCodeUtils { private static Properties properties = new Properties(); public static String DEFAULT_CODE = "101010100"; private CityCodeUtils() { } static { ClassLoader classLoader = CityCodeUtils.class.getClassLoader(); InputStream is = classLoader.getResourceAsStream("文件名.properties"); try { //解决读取properties文件时的中文乱码问题 //给中文读取设置为utf-8编码规则 若不加BufferedReader 设置的编码规则 //则很有可能在读取文件名.properties 时出现乱码 BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(is,"utf-8")); properties.load(bufferedReader); } catch (IOException e) { throw new RuntimeException(e); } }}
debug截图:
至此 问题已解决!
来源地址:https://blog.csdn.net/Coastlise/article/details/130949505