原因:编码格式问题,java读取properties文件默认使用的是ISO8859-1编码
解决方法:按自己的项目需要转成对应的编码格式即可。
以下附简单的java读取properties代码:
common.properties代码:
#网站名称
site=我的中文网站名称
CP.java代码:
import java.io.FileNotFoundException; import java.io.IOException; import java.util.Properties; public class CP { private static final String path = "config/common.properties";//从src的根目录开始 private static final String encode = "UTF-8";//文件的编码格式 private static Properties props = new Properties(); static { try { props.load(Thread.currentThread().getContextClassLoader() .getResourceAsStream(path)); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public static String getValue(String key) throws Exception { return new String(props.getProperty(key).getBytes("ISO8859-1"), encode); } public static void updateProperties(String key, String value) { props.setProperty(key, value); } public static void main(String[] args) throws Exception{ System.out.println("网站名称:"+CP.getValue("site")); } }