• java读取配置文件


    java 读取文件可以用字节流和字符流。 由于一个汉字占两个字节,所以如果配置文件中有汉字,用字节流读取,会出现乱码。 用字符流则不会出现乱码。

    配置文件 b.properties 文件如下:

    family name = zhou
    second name = dingzhao
    gender = male
    tel no. = +86 (-) 13913462
    salary = 0.001k
    职业 =java & 工程师

    读取配置文件的代码如下:

    Properties pro = new Properties();

    try {

      FileReader in2 = new FileReader(new File("I:\Workspaces\MyWork\xcserver\src\com\xiaocong\user\service\b.properties"));

      pro.load(in2);  

      System.out.println(pro.getProperty("family name"));

      Iterator<String> it=pro.stringPropertyNames().iterator();
        while(it.hasNext()){
        String key=it.next();
        System.out.println(key+":"+pro.getProperty(key));
      }

      in2.close();

    } catch (FileNotFoundException e) {

      e.printStackTrace();

    }

    System.out.println(pro.getProperty("职业"));

    输出:

    zhou
    second:name = dingzhao
    tel:no. = +86 (-) 139133462
    family name:zhou
    gender:male
    salary:0.001k
    职业:java & 工程师

    java & 工程师

    注:

    1、配置文件中有空格的话,需要用 转义符。

    2、pro.getProperty("职业")   getProperty(key)方法可以取得配置文件中变量的值。

    字节流代码如下:

    Properties pro = new Properties();

    try {

      InputStream in2 = new BufferedInputStream (new FileInputStream("I:\Workspaces\MyWork\xcserver\src\com\xiaocong\user\service\a.properties"));

      pro.load(in2);

      System.out.println(pro.getProperty("family name"));

      Iterator<String> it=pro.stringPropertyNames().iterator();
      while(it.hasNext()){
        String key=it.next();
        System.out.println(key+":"+pro.getProperty(key));
      }

      in2.close();

    } catch (FileNotFoundException e) {

      e.printStackTrace();

    }

     字节流配置文件中的中文会变成乱码。

      

  • 相关阅读:
    es进行聚合操作时提示Fielddata is disabled on text fields by default
    es基本操作
    maven项目修改项目名
    Linux命令整理
    CentOS 安装git
    Linux命令
    纵表转横表
    Row_Number() over()
    事件冒泡/捕获
    js获取参数 解决乱码
  • 原文地址:https://www.cnblogs.com/z360519549/p/6262659.html
Copyright © 2020-2023  润新知