java读取配置文件信息生成Map对象

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wo_buzhidao/article/details/82218887

通过读取配置文件生成map对象便于提取文件内容和转码

文本文件为config下的device.ini

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import org.springframework.util.ResourceUtils;

public class TransDeviceCode {
    /**读取config文件下device.in文件,
     * 
     * @param file  device.ini文件地址
     * @return
     */
    private Map<String,String> tempMap;
    public TransDeviceCode(){
    }
    public TransDeviceCode(String fileName){
        tempMap=new HashMap<String,String>();
        String strLine;
        BufferedReader bufferedReader;
        StringBuffer buffer;
        File file;
        try {
            file=ResourceUtils.getFile("classpath:"+fileName);
            bufferedReader = new BufferedReader(new FileReader(file));
            while ((strLine = bufferedReader.readLine()) != null) {
                strLine = strLine.trim();
                char arr[] = strLine.toCharArray();
                if(strLine.indexOf('#')>=0) {
                    continue;
                }
                if(strLine.length() == 0) {
                    continue;
                }
                buffer = new StringBuffer();
                for(int i=0; i<arr.length; i++) {
                    char c = arr[i];
                    int ascii = (int)c;
                    if(ascii == 65533 || ascii == 0) {
                        continue;
                    }else{
                        buffer.append(arr[i]);
                    }
                }
                String sarr[] = buffer.toString().split("   ");
                tempMap.put(sarr[1].trim(), sarr[3].trim());   //这里需要哪一列的信息就提取哪一列
            }
            bufferedReader.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    //可以通过此方法转码
    public String getValue(String key){
        key=key.trim();
        String value=this.tempMap.get(key);
        if(value==null || value==""){
            value=key;
        }
        value=value.trim();
        return value;
    }
}

猜你喜欢

转载自blog.csdn.net/wo_buzhidao/article/details/82218887