Java 手写读取配置文件

212 阅读1分钟

文件读取:

public String getFileString(int lengths) throws IOException {
        StringBuffer buffer=new StringBuffer();
        if(file!=null&&file.isFile()&&file.exists()){
            InputStreamReader isr = new InputStreamReader(new FileInputStream(file), "UTF-8");
            BufferedReader reader = new BufferedReader(isr);
            String line=null;
            int i=0;
            while ((line = reader.readLine())!=null){
                i++;
                if(i>lengths){
                    break;
                }
                line= line.replace(" ","").trim();
                line=line.split("#")[0];
                if(line.startsWith("[")&&line.endsWith("]")){
                    buffer.append(line+"\n");
                    continue;
                }
                if(line.indexOf('=')!=-1){
                   buffer.append(line+"\n");
                }
            }
        }
        return buffer.toString();
    }

后面发现这样不好,因为有现成的Properties类,直接使用比较好

 Properties current = new Properties();
 current.setProperty(name, value);

这样直接使用就好了,你可以使用一个HashMap来保存它

HashMap<String,Properties> properties=new HashMap<>();

高级一点的就是,后面的配置文件可以读取前面的配置文件 比如

[gobal]
server.ip=192.168.10.71
[mysql]
mysql.addr={{server.ip}}

所以就是这样了,不用每次都写一个配置文件,自己用的东西少,框架反而限制了你的思路。