美文网首页java学习笔记
java学习笔记:java文件读写-读取properties配置

java学习笔记:java文件读写-读取properties配置

作者: melody256 | 来源:发表于2018-10-10 18:35 被阅读0次

    一、简述

    各种语言都有自己所支持的配置文件类型,Java支持的是.properties文件的读写。JDK内置的java.util.Properties类为我们操作.properties文件提供了便利。

    二、properties文件格式

    文件示例:

    #adaptertest init data

    #手机设备号

    mobiledevice=84c5f58a

    #音箱设备号

    miadevice=A3004100005P

    “#”开始的一行为注释信息;

    “=”左边的我们称之为key,“=”右边的我们称之为value。key是我们程序中的变量,而value是我们根据实际情况配置的。

    key与value只能为字符串。

    三、properties类中的主要方法

    1)getProperty(String key)

    用指定的键在此属性列表中搜索属性。也就是通过参数key,得到key所对应的value。

    2)load(InputStream inStream)

    从输入流中读取属性列表(键和元素对)。以供getProperty( String key)来搜索。

    3)setProperty(String key, String value)

    调用Hashtable的方法put 。他通过调用基类的put方法来设置键-值对。

    4)store(OutputStream out, String comments)

    以适合使用load方法加载到Properties表中的格式,将此Properties表中的属性列表(键和元素对)写入输出流。与load方法相反,该方法将键-值对写入到指定的文件中去。

    5)clear()

    清除所有装载的键-值对。该方法在基类中提供

    四、Java读取Properties文件

    Java读取Properties文件的方法有很多,以下为使用java.util.Properties类的load()方法读取Properties文件。

    待读取.properties文件需放到正确的工程文件目录下,否则会报错:.properties文件与project.properties文件在同一级目录。

    1)Properties文件

    #adapter test init data

    #手机设备号

    mobiledevice=84c5f58a

    #音箱设备号   

    miadevice=A3004100005P

    2)java代码

    import java.io.BufferedReader;

    import java.io.BufferedWriter;

    import java.io.FileInputStream;

    import java.io.FileOutputStream;

    import java.io.IOException;

    import java.io.InputStream;

    import java.io.InputStreamReader;

    import java.io.OutputStream;

    import java.io.OutputStreamWriter;

    import java.util.Iterator;

    import java.util.Properties;

    Properties prop = new Properties();

    try {

        //读取文件

    InputStream inputStream = newFileInputStream("adapter_test_initdata.properties");

    //设置编码格式为utf-8,处理中文乱码问题

    BufferedReader bf = newBufferedReader(new InputStreamReader(inputStream, "utf-8"));

       prop.load(bf);

    Iterator it=prop.stringPropertyNames().iterator();

    while(it.hasNext()){

             Stringkey=it.next();

                 System.out.println(key+":"+prop.getProperty(key));

    }

    mobile_device = prop.getProperty("mobiledevice");

    mia_device = prop.getProperty("miadevice");

       inputStream.close();

    }catch (Exception e) {

              System.out.println(e);

              e.printStackTrace();

    }

    相关文章

      网友评论

        本文标题:java学习笔记:java文件读写-读取properties配置

        本文链接:https://www.haomeiwen.com/subject/icouoftx.html