Java学习之路(五十八)| IO流(五)Properties类

各自努力,最高处见!加油!

这里有个小错误,在敲例子的时候Properties单词写错了,但是对知识的学习没有关系,请各位看官不要介意。

一、引入

读取配置文件的传统读法:

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;

public class Properities01 {
    public static void main(String[] args) throws IOException {
        BufferedReader bufferedReader=new BufferedReader(new FileReader("D:\\Java_code\\LearnPlus\\mysql.properties"));
        String line="";

        while((line=bufferedReader.readLine())!=null){
            String[] split = line.split("=");//分割字符串
            System.out.println(split[0]+"的值是:"+split[1]);
        }

        bufferedReader.close();
    }
}

弊端:修改配置文件非常麻烦。

二、基本介绍

类图

在这里插入图片描述

专门用于读写配置文件的集合类
配置文件的格式:
键=值
注意:键值对不需要有空格,值不需要用引号。默认类型是String。

常见方法:

  1. load:加载配置文件的键值对到Properties对象。
  2. list:将数据显示到指定设备。
  3. getProperty (key):根据键获取值。
  4. setProperty (key,value):设置键值对到Properties对象。
  5. store:将Properties中的键值对存储到配置文件,在IDEA总,保存信息到配置文件,如果含有中文,会存储为unicode码。
  6. http://tool.chinaz.com/tool/unicode.aspx Unicode码查询工具

Properties类读取文件

在这里插入图片描述

import java.io.FileReader;
import java.io.IOException;
import java.util.Properties;

public class Properties02 {
    public static void main(String[] args) throws IOException {
        //用Properties类来读取mysql.properties文件
        Properties properties=new Properties();
        properties.load(new FileReader("D:\\Java_code\\LearnPlus\\mysql.properties"));
        properties.list(System.out);//将数据列表显示在控制台
        String user = properties.getProperty("user");
        String pwd = properties.getProperty("pwd");
        System.out.println("用户名:"+user);
        System.out.println("密码:"+pwd);
    }
}

Properties创建配置文件,修改配置文件的内容

如果文件存在,就是修改,没有文件就是创建。

示例代码:

import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;

public class Properities03 {
    public static void main(String[] args) throws IOException {
        Properties properties = new Properties();

        properties.setProperty("charset","utf-8");
        properties.setProperty("user","汤姆");
        properties.setProperty("pwd","abc123");

        properties.store(new FileOutputStream("D:\\Java_code\\LearnPlus\\mysql2.properties"),"hello world");
        //这里的第二个参数helloworld表示注解,一般情况可以写null
        System.out.println("配置文件保存成功");
    }
}

在这里插入图片描述

原理:Properties继承了HashCode类,底层维护了一个Entry数组。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值