• Properties/Property文件读取(键值均)乱码问题!


    方法一:使用native2ascii进行转码,这个不做说明,客户不可能帮你转码的。

    方法二:当键是因为时直接getProperty即可,但加载后的propertis对象里的键也是中文乱码,就无法通过getProperty来获得值,

    原理):(1)如果编码(输出)和解码(读入)用的encoding是不一致的有可能会引起中文乱码问题

                    (2)Properties文件默认机制是采用ISO8859-1处理

    步骤):(1)首先得先将key转码成ISO8850-1(此时转码后是乱码)

                    (2)然后将转码的值来getProperty。

    参考代码:

    try
    			{
    				Properties properties = new Properties();			
    				FileInputStream is = new FileInputStream(fileName);		
    				properties.load(is);			
    				is.close();			
    				
    				//首先得先将key转码成ISO8850-1
    				val = properties.getProperty(new String(keyValue.getBytes("GBK"),"ISO8859_1"));
    
    				//对属性文件的内容进行转码
    		        if(val != null)
    		        {
    		        	try
    					{
    						val = new String(val.getBytes("ISO8859_1"),"GBK");
    					} catch (UnsupportedEncodingException e)
    					{	
    						e.printStackTrace();
    					}
    		        }
    			}
    			catch (Exception e)
    			{
    				e.printStackTrace();
    			}


  • 相关阅读:
    知识的本质
    福克斯保养注意事项及驾驶技巧
    转 网络编程
    Linux系统下安装 apache2.4的过程
    代码静态检查工具PCLint运用实践
    gcc编译系统
    量子计算机:决胜21世纪的利器
    关于ETL工具、方案的认识
    《HTTP: The Definitive Guide》读书笔记
    ArrayList(转用法)
  • 原文地址:https://www.cnblogs.com/keanuyaoo/p/3271400.html
Copyright © 2020-2023  润新知